How Society Works | The Society Volatility Indicator and its Score System

The Sensor That Feels How Hard Society Is Being Pushed

PUBLIC.ID: HOW.SOCIETY.WORKS.VOLATILITY.SCORE.v1.0
MACHINE.ID: EKSG.SOCIETYOS.VOLATILITY.FEEL.SENSOR.v1.0
LATTICE.CODE: SOC.OS/Z0-Z6/P3-P0/VOLATILITY/EQUILIBRIUM/FEEL.SENSOR.v1.0
ARTICLE TYPE: eduKateSG / SocietyOS / CivOS public article
CORE CONCEPT: Society does not only change structurally. People feel the change. The Volatility Score measures how unstable, pressured, anxious, reactive, or unsettled society feels while it is being pushed by time, events, cost, rules, technology, culture, and change.


1. The Core Idea

Society is always moving.

But not all movement feels the same.

Some changes are smooth.
Some changes are uncomfortable but manageable.
Some changes feel like pressure.
Some changes feel like panic.
Some changes feel like society is shaking.

That shaking is social volatility.

“`almost-code id=”soc-vol-001″
SOCIAL.VOLATILITY =
felt instability
+ adjustment pressure
+ uncertainty
+ emotional heat
+ trust stress
+ speed of change
+ difficulty adapting

The **Volatility Score** is the sensor that tells us:
> **How hard is society being pushed, and how badly are people feeling the movement?**
---
## 2. Why Volatility Matters
In the previous article, **The Equilibrium**, we asked:
> Does society move up, move down, dissipate energy, and settle into a new location?
The Volatility Score helps answer that.
A society has not truly settled back into equilibrium if people still feel:

anxious
angry
uncertain
compressed
unsafe
betrayed
confused
overloaded
unable to plan
unable to trust
unable to adapt

A society may look calm on the surface, but if volatility remains high underneath, equilibrium has not fully returned.

VISIBLE.CALM != LOW.VOLATILITY

People may stop talking, stop protesting, stop complaining, or stop expecting better.
But that is not necessarily settlement.
It may be exhaustion.
---
## Summary
The **Society Indicator / Planet Score** is a diagnostic system for measuring whether society is healthy, pressured, volatile, settling, or drifting downward.
It combines several layers:
```almost-code id="zsm8fv"
Society Score =
trust
+ governance
+ culture
+ human wellbeing
+ economy
+ education
+ security
+ PlanetOS / Earth conditions
+ information quality
+ repair capacity
- volatility
- shocks
- paper-reality gap
- false equilibrium risk
```
The key idea is that society is not judged only by GDP, laws, infrastructure, or visible order. It must also include how humans **feel** inside the system.
So the model tracks:
```almost-code id="nz3xkn"
Can people trust?
Can people adapt?
Can people afford life?
Can people see a future?
Can institutions repair damage?
Is culture holding or fragmenting?
Is PlanetOS/Earth pressure burning the floor?
Are wars, disasters, and shocks making people feel unsafe?
Has society returned to equilibrium, or is it only quiet on the surface?
```
The sample run gave a **sample-only Planet Society Score of 23.68/100**, meaning severe stress in the illustrative model. That was not a live factual measurement. It was a demonstration of the scoring engine using assumed placeholder values.
The sample showed:
```almost-code id="gu8ync"
SocietyIndicatorScore: 23.68 / 100
VolatilityScore: 59.89 / 100
HumanFeelIndex: 59.44 / 100
EquilibriumScore: 26.46 / 100
PlanetFloorBurn: 66.05 / 100
CombinedShock: 58.13 / 100
Movement: moved down from baseline
SettlementType: not settled
```
The main reading was:
```almost-code id="oubz1n"
PlanetOS pressure
+ cost pressure
+ information heat
+ war/conflict pressure
+ weak future confidence
= human strain
= higher volatility
= weak equilibrium
= low society indicator score
```
In short:
> **The score is trying to detect whether civilisation is still holding its balance, or whether people are quietly feeling the floor tilt beneath them.**
---
# Score Range Table
## 1. Society Indicator Score
**High score = better society health**
| Score Range | Zone | Meaning |
| ----------: | ------------------------- | ----------------------------------------------------------------------------------------- |
| 85โ€“100 | Strong Stable Adaptive | Society is broadly trusted, functional, resilient, and able to adapt. |
| 70โ€“84 | Functional Stable | Society works well, with manageable pressure and repair capacity. |
| 55โ€“69 | Functional Under Pressure | Society still works, but stress, volatility, or future pressure is visible. |
| 40โ€“54 | Fragile Stressed | Society is functioning but fragile; trust, cost, culture, or repair systems are strained. |
| 25โ€“39 | Unstable High Risk | Society is under serious pressure; shocks can cause wider instability. |
| 0โ€“24 | System Failure Risk | Societyโ€™s operating balance is severely weakened or near failure. |
---
## 2. Volatility Score
**High score = society feels more unstable**
| Score Range | Zone | Meaning |
| ----------: | --------- | ----------------------------------------------------------------- |
| 0โ€“20 | Calm | Change is absorbable; society feels settled. |
| 21โ€“40 | Warm | Pressure exists, but trust and buffers still hold. |
| 41โ€“60 | Unsettled | People feel the change; adaptation is strained. |
| 61โ€“80 | Volatile | Society feels reactive, pressured, anxious, and unstable. |
| 81โ€“100 | Critical | Trust, adaptation, and future confidence are under severe stress. |
---
## 3. Human Feel Index
**High score = humans feel more pressure**
| Score Range | Zone | Meaning |
| ----------: | ------------------- | ------------------------------------------------------------------------ |
| 0โ€“20 | Low Pressure | People generally feel safe, stable, and able to plan. |
| 21โ€“40 | Manageable Pressure | Stress exists, but most people can still adapt. |
| 41โ€“60 | Strained | People are feeling cost, uncertainty, trust, safety, or future pressure. |
| 61โ€“80 | High Distress | Human stress is high; society feels difficult to live inside. |
| 81โ€“100 | Severe Distress | People feel overwhelmed, unsafe, hopeless, or unable to adapt. |
---
## 4. Equilibrium Score
**High score = society has settled into a healthier balance**
| Score Range | Zone | Meaning |
| ----------: | --------------------------- | ------------------------------------------------------------------------ |
| 80โ€“100 | Healthy Dynamic Equilibrium | Society is moving but stable; repair, trust, and future confidence hold. |
| 60โ€“79 | Working Equilibrium | Society is mostly settled, though not perfect. |
| 45โ€“59 | Fragile Equilibrium | Society works, but balance is weak and easily disturbed. |
| 30โ€“44 | Unstable Equilibrium | The system is not settled; pressure can tip it further. |
| 0โ€“29 | Equilibrium Failure | Society has not returned to a stable balance. |
---
## 5. Paper-Reality Gap
**High score = official society and lived society do not match**
| Score Range | Zone | Meaning |
| ----------: | ------------- | ---------------------------------------------------------- |
| 0โ€“10 | Aligned | Paper rules and lived experience broadly match. |
| 11โ€“25 | Watch Gap | Some difference exists; monitor for trust drift. |
| 26โ€“45 | Serious Gap | Official claims and lived reality are separating. |
| 46โ€“100 | Dangerous Gap | Paper society may be masking real instability or distrust. |
---
## 6. Combined Shock Score
**High score = society is being hit by stronger active shocks**
| Score Range | Zone | Meaning |
| ----------: | -------------- | --------------------------------------------------------------------- |
| 0โ€“20 | Low Shock | Little active disruption. |
| 21โ€“40 | Moderate Shock | Noticeable shock, but likely manageable. |
| 41โ€“60 | High Shock | Disaster, war, economic, climate, or social shocks are strongly felt. |
| 61โ€“80 | Severe Shock | Multiple systems are under pressure. |
| 81โ€“100 | Systemic Shock | Shocks are large enough to threaten society-wide stability. |
---
## 7. Planet Floor Burn
**High score = Earth/PlanetOS conditions are burning future floor space**
| Score Range | Zone | Meaning |
| ----------: | ------------------- | ------------------------------------------------------------------------------- |
| 0โ€“20 | Low Burn | Planet conditions are mostly stable. |
| 21โ€“40 | Watch Burn | Environmental pressure is visible but manageable. |
| 41โ€“60 | Warning Burn | Climate, disaster, food, water, heat, or ecosystem stress is affecting society. |
| 61โ€“80 | Severe Floor Burn | Planet conditions are reducing future options and increasing volatility. |
| 81โ€“100 | Critical Floor Burn | Earth-system stress threatens long-term civilisation floor space. |
---
## One-Line Interpretation
```almost-code id="5rskbh"
Society Score tells us how well society is holding.
Volatility Score tells us how hard society is shaking.
Human Feel Index tells us how people experience the pressure.
Equilibrium Score tells us whether society has settled.
Paper-Reality Gap tells us whether official stability matches lived reality.
Planet Floor Burn tells us whether Earth itself is narrowing the future.
```
## 3. What the Volatility Score Is Trying to Measure
The Volatility Score measures how much society is emotionally and structurally shaking.
It asks:

How much change is happening?
How fast is it happening?
Can people understand it?
Can people adapt to it?
Do people trust the institutions managing it?
Do people feel the future is still reachable?
Is pressure being absorbed, converted, or amplified?

The score is not only about events.
It is about human adjustment.
Because society is not just policy, buildings, money, and institutions.
Society is people trying to live inside changing conditions.
---
## 4. The Human Layer: People Feel Time and Change
People do not experience society as a dashboard.
They experience society as life.

higher prices
harder exams
changing jobs
new technology
housing pressure
family pressure
changing manners
new social rules
future uncertainty
media overload
institutional distrust

When time moves too fast and change keeps coming, people feel it in their bodies and behaviour.
They may become:

more reactive
more defensive
more suspicious
more tired
more impatient
more tribal
more pessimistic
less generous
less trusting
less future-oriented

This is why volatility is not only an economic idea.
It is a human pressure reading.
---
## 5. The Volatility Score Formula
A simple SocietyOS formula:

VOLATILITY.SCORE =
Change Speed
+ Pressure Load
+ Uncertainty
+ Trust Stress
+ Emotional Heat
+ Adaptation Difficulty
+ Future Fear
– Repair Confidence
– Institutional Clarity
– Social Buffer

High volatility means people are being pushed hard and do not feel enough stability, clarity, trust, or buffer to adjust well.
Low volatility means people may still face change, but they feel the system is understandable, manageable, and repairable.
---
## 6. The Main Sensors
The Volatility Score is not one sensor.
It is a sensor bundle.

VOLATILITY.SENSOR.BUNDLE =
mood sensor
trust sensor
cost-pressure sensor
uncertainty sensor
behaviour sensor
media-temperature sensor
conflict sensor
institutional-confidence sensor
future-confidence sensor
adaptation sensor

Each sensor reads one part of the social field.
---
## 7. Sensor 1: Mood Sensor
This checks the emotional atmosphere.

MOOD.SENSOR =
anger
fear
sadness
anxiety
frustration
hopelessness
optimism
confidence

A society with rising anger and falling confidence is becoming more volatile.
A society with disagreement but stable confidence is less volatile.
The key is not whether people complain.
The key is whether complaint becomes despair, distrust, or instability.
---
## 8. Sensor 2: Trust Sensor
Trust is the stabiliser.
When trust is high, people can tolerate more change.
When trust is low, even small changes feel threatening.

TRUST.SENSOR =
trust in government
trust in schools
trust in law
trust in media
trust in employers
trust in neighbours
trust in fairness
trust in future

Trust lowers volatility because people believe:
> โ€œThis may be difficult, but the system is not trying to abandon me.โ€
When trust is low, people believe:
> โ€œSomething is being done to me.โ€
That difference changes everything.
---
## 9. Sensor 3: Cost-Pressure Sensor
Cost pressure is one of the fastest ways to increase volatility.

COST.PRESSURE.SENSOR =
housing pressure
food prices
transport costs
education costs
healthcare costs
debt burden
job insecurity
wage stagnation

When daily life becomes too expensive, people feel society narrowing.
Even if the country looks successful, the lived experience may become:

work harder
pay more
save less
plan less
risk less
hope less

This raises volatility because the body feels compression before the mind can explain it.
---
## 10. Sensor 4: Uncertainty Sensor
People can tolerate difficulty better than uncertainty.
Difficulty says:
> โ€œThis is hard.โ€
Uncertainty says:
> โ€œI do not know what is happening, what comes next, or how to prepare.โ€

UNCERTAINTY.SENSOR =
policy uncertainty
job uncertainty
economic uncertainty
cultural uncertainty
technological uncertainty
security uncertainty
family-route uncertainty
education-route uncertainty

High uncertainty makes society reactive.
People stop planning long-term.
They protect themselves.
They retreat into smaller circles.
They become suspicious of change.
---
## 11. Sensor 5: Behaviour Sensor
Volatility eventually shows up in behaviour.

BEHAVIOUR.SENSOR =
public anger
withdrawal
social conflict
lower participation
higher complaint load
migration desire
protest energy
online hostility
avoidance behaviour
compliance without belief

Behaviour is important because people may not say clearly what they feel.
But they act it out.
A society can learn a lot by watching what people avoid, where they gather, what they stop believing in, and what they no longer bother to defend.
---
## 12. Sensor 6: Media Temperature Sensor
Media does not only report volatility.
It can amplify volatility.

MEDIA.TEMPERATURE.SENSOR =
outrage frequency
fear headlines
blame intensity
viral panic
rumour spread
misinformation load
emotional compression
narrative polarisation

If the media field becomes too hot, society may feel more unstable than the underlying event requires.
But if media heat reveals a real hidden pressure, it can also act as an early warning signal.
So the Observer must separate:

real pressure
from
amplified pressure
from
manufactured pressure

---
## 13. Sensor 7: Conflict Sensor
Conflict is not automatically bad.
A healthy society can argue.
But volatility rises when conflict becomes identity-level, trust-breaking, or impossible to resolve.

CONFLICT.SENSOR =
group tension
class resentment
racial tension
generational tension
political hostility
cultural friction
workplace conflict
school pressure conflict
family stress

The danger is not disagreement.
The danger is when disagreement becomes:

they are the enemy
the system is rigged
nobody listens
nothing can be repaired

That is high volatility.
---
## 14. Sensor 8: Institutional Confidence Sensor
People feel safer when institutions remain believable.

INSTITUTIONAL.CONFIDENCE.SENSOR =
government clarity
school confidence
court trust
healthcare trust
policing trust
workplace trust
national competence
crisis response confidence

When institutions communicate clearly and repair visibly, volatility drops.
When institutions look distant, confused, unfair, or self-protective, volatility rises.
---
## 15. Sensor 9: Future Confidence Sensor
This may be the most important long-term sensor.

FUTURE.CONFIDENCE.SENSOR =
belief that effort matters
belief that children can do better
belief that housing is reachable
belief that education opens routes
belief that work leads somewhere
belief that society has a future

A society becomes highly volatile when people no longer believe tomorrow is reachable.
This connects to the Civilisation Floor metaphor.
If people feel that next yearโ€™s floor has fewer rooms, narrower corridors, and fewer chairs, volatility rises.

IF FutureFloorSpace decreases
THEN SocialVolatility increases

---
## 16. Sensor 10: Adaptation Sensor
This checks whether people can adjust to change.

ADAPTATION.SENSOR =
skill retraining capacity
education support
family buffer
financial savings
emotional resilience
community support
institutional guidance
time to adjust

People do not resist all change.
They resist change that arrives faster than they can absorb.

IF ChangeSpeed > AdaptationCapacity
THEN Volatility rises

This is one of the cleanest laws in SocietyOS.
---
# 17. The Volatility Score Scale
A simple public-facing scale:
| Score | Zone | Meaning |
| -----: | --------- | ---------------------------------------------------------- |
| 0โ€“20 | Calm | Society is mostly settled. Change is manageable. |
| 21โ€“40 | Warm | Pressure exists, but trust and buffers still hold. |
| 41โ€“60 | Unsettled | People feel change. Adaptation is difficult. |
| 61โ€“80 | Volatile | Society feels unstable, reactive, and pressured. |
| 81โ€“100 | Critical | Trust, confidence, and adaptation are under severe stress. |
---
## 18. The Five Volatility Zones
### Zone 1: Calm

CALM =
low pressure
clear rules
sufficient trust
manageable cost
stable future expectation

This does not mean nothing is happening.
It means people can adjust.
---
### Zone 2: Warm

WARM =
pressure rising
complaints visible
uncertainty present
but trust still absorbs shock

This is normal in changing societies.
Warm society is not dangerous if repair is active.
---
### Zone 3: Unsettled

UNSETTLED =
people feel the change
planning becomes harder
confidence becomes mixed
institutions need to explain more

This is the first serious watch zone.
If ignored, unsettled can become volatile.
---
### Zone 4: Volatile

VOLATILE =
trust stress
high emotional heat
strong uncertainty
visible conflict
adaptation difficulty
future fear

In this zone, society becomes reactive.
People may over-read signals, under-trust institutions, and move into defensive behaviour.
---
### Zone 5: Critical

CRITICAL =
people no longer believe
institutions lose credibility
conflict amplifies
future feels closed
repair signals are weak

This is not always collapse.
But it is pre-collapse pressure.
The table is no longer merely tilted.
It is shaking.
---
## 19. How Volatility Shows Whether Equilibrium Has Returned
Equilibrium returns only when volatility falls and stays low enough across time.

EQUILIBRIUM.RETURN =
volatility spike
-> energy dissipates
-> trust stabilises
-> behaviour normalises
-> future confidence returns
-> new settlement accepted

But there is a difference between real settlement and forced silence.

REAL.SETTLEMENT =
volatility falls
because people understand,
trust,
adapt,
and accept the new balance.

FALSE.SETTLEMENT =
volatility appears to fall
because people are tired,
afraid,
resigned,
or unheard.

This is why the Observer cannot only measure visible noise.
It must measure hidden pressure too.
---
## 20. The Volatility Curve
After a major event, society may follow this curve:

EVENT
-> shock
-> volatility spike
-> explanation / confusion
-> trust test
-> adaptation
-> repair or resentment
-> new equilibrium

If repair works:

Volatility rises
then falls
then stabilises lower.

If repair fails:

Volatility rises
then stays high
or falls on the surface
while resentment stores underneath.

If institutions mishandle the change:

Volatility rises
then amplifies
then spreads into other systems.

---
## 21. The Hidden Volatility Problem
Some societies are loud but healthy.
Some societies are quiet but unstable.
Noise is not always volatility.
Silence is not always stability.

LOUD.SOCIETY may be processing pressure.
QUIET.SOCIETY may be storing pressure.

So the Volatility Score must read beneath the surface.
It must ask:

Are people calm because they trust?
Or calm because they gave up?
Are people quiet because the issue is resolved?
Or quiet because they feel nothing can change?

That distinction matters.
A society that processes conflict openly may be healthier than a society that hides conflict under formal calm.
---
## 22. Volatility and the Mover/Shaker
Movers and Shakers introduce force.
The Volatility Score measures what that force does to society.

MOVER.SHAKER =
force input

VOLATILITY.SCORE =
felt system shake

OBSERVER =
reference frame

LEDGER =
memory of movement

EQUILIBRIUM =
final settlement position

A good Mover and Shaker may raise short-term volatility but lower long-term instability.
A bad Mover and Shaker may lower visible conflict temporarily while increasing hidden volatility.
This is why change must be judged across Ztime.
---
## 23. Volatility Across Ztime
### Short-term volatility

Immediate shock
anger
confusion
fear
media heat
reaction

### Medium-term volatility

adaptation difficulty
institutional trust test
cost pressure
behaviour changes
social conflict

### Long-term volatility

future confidence
social mobility
intergenerational trust
norm stability
institutional legitimacy
civilisation floor space

A society may accept pain in the short term if it believes the long-term direction is worth it.
But if the future is unclear, short-term pain becomes long-term volatility.
---
## 24. The Singapore-Style Reading
In a Singapore context, volatility may not always appear as mass public disorder.
It may show up more quietly through:

cost-of-living anxiety
education pressure
housing stress
career insecurity
youth mental load
parental fear
foreign-local tension
trust in fairness
future-route compression
quiet resignation

So a low-noise society can still have volatility.
The sensor must be sensitive enough to detect pressure before it becomes visible breakdown.
---
## 25. The Volatility Dashboard

VOLATILITY.DASHBOARD =
Mood Heat
Trust Stress
Cost Pressure
Uncertainty Load
Media Temperature
Conflict Intensity
Institutional Confidence
Future Confidence
Adaptation Capacity
Hidden Resentment

Each can be scored from 0 to 10.

0 = stable / low pressure
10 = severe / high pressure

Then:

VOLATILITY.SCORE =
weighted average of all sensors

But weighting matters.
In some societies, cost pressure is the main volatility driver.
In others, identity conflict is the driver.
In others, institutional distrust is the driver.
In others, future fear is the driver.
So SocietyOS must not use one universal weight blindly.
It must calibrate by context.
---
## 26. Example Runtime

EVENT:
housing prices rise quickly

SENSOR READINGS:
Cost Pressure = high
Future Confidence = falling
Trust Stress = medium
Youth Anxiety = high
Family Pressure = high
Institutional Confidence = depends on policy response

VOLATILITY OUTPUT:
If people believe policy can repair:
volatility rises then settles.

If people believe housing is permanently unreachable:
volatility becomes long-term social stress.
This is why volatility is not only about the price itself.
It is about whether people still believe the route is open.
---
## 27. Volatility vs Collapse
High volatility does not always mean collapse.
Sometimes high volatility means society is changing quickly.
The question is whether it has:

repair capacity
trust reserves
clear communication
adaptation pathways
fair burden-sharing
future confidence

If yes, volatility can become upgrade.
If no, volatility becomes destabilisation.

HIGH.VOLATILITY + HIGH.REPAIR = transformation
HIGH.VOLATILITY + LOW.REPAIR = instability

---
## 28. The Main Law

SOCIAL.VOLATILITY rises when change speed exceeds human adaptation capacity.

And:

almost-code id=”soc-vol-049″
SOCIAL.EQUILIBRIUM returns when human adaptation catches up with change speed.

This is the heart of the article.
People do not suffer only because society changes.
They suffer when society changes faster than they can understand, trust, afford, or adapt to.
---
## 29. Final Definition
**The Volatility Score is the SocietyOS sensor that measures how unstable, pressured, reactive, anxious, or unsettled society feels while change is moving through it.**
It helps determine whether society has returned to equilibrium or is merely quiet on the surface.

almost-code id=”soc-vol-050″
VOLATILITY.SCORE =
how hard society is shaking
as people try to adapt
to time,
pressure,
uncertainty,
cost,
rule changes,
cultural change,
and future fear.
“`

Low volatility does not mean perfect society.

It means change is currently absorbable.

High volatility does not mean society has collapsed.

It means the people inside are feeling the force of movement.

The Observer watches the movement.
The Ledger records the delta.
The Mover and Shaker creates force.
The Equilibrium shows where society settles.
The Volatility Score tells us how hard the people felt the journey.

SOCIETY_INDICATOR_SCORE_ENGINE:
PUBLIC_ID: "HOW.SOCIETY.WORKS.SOCIETY.INDICATOR.SCORE.v1.0"
MACHINE_ID: "EKSG.SOCIETYOS.INDICATOR.SCORE.PLANETOS.CROSSWALK.v1.0"
LATTICE_CODE: "SOC.OS/Z0-Z6/P0-P4/VOLATILITY/EQUILIBRIUM/PLANETOS/HUMAN.FEEL.SENSOR.v1.0"
MODE: "FULL_AI_RUNTIME_CODE_ONLY"
PURPOSE:
- "Calculate Society Indicator Score."
- "Calculate Society Volatility Score."
- "Detect whether society is settling into equilibrium or entering instability."
- "Include human-feel sensors, cultural sensors, institutional sensors, economic sensors, PlanetOS sensors, disaster sensors, war sensors, and earth-change sensors."
- "Separate paper society from lived society."
- "Measure delta from Zero Pin baseline."
- "Track movement toward higher equilibrium, lower equilibrium, false equilibrium, fragile equilibrium, or collapse risk."
BOUNDARY_STATEMENT:
TYPE: "dashboard_not_truth_oracle"
RULE:
- "This engine is a diagnostic framework, not proof of actual society health by itself."
- "Output requires real data, source quality checks, local context, expert interpretation, and uncertainty bounds."
- "High score does not mean perfect society."
- "Low score does not mean immediate collapse."
- "Volatility score measures pressure and felt instability, not moral worth."
- "Equilibrium score measures settlement quality, not absence of change."
CORE_OBJECTS:
SOCIETY:
DEFINITION: "A moving human coordination field made of people, culture, institutions, resources, signals, trust, rules, memory, territory, planet conditions, and future expectations."
OBSERVER:
DEFINITION: "Reference frame that watches society move."
FUNCTION:
- "baseline society"
- "measure delta"
- "detect drift"
- "read volatility"
- "record ledger"
- "compare paper society vs lived society"
ZERO_PIN:
DEFINITION: "Stable reference baseline used to calculate movement."
TYPES:
- "historical_baseline"
- "pre_crisis_baseline"
- "national_baseline"
- "regional_baseline"
- "civilisation_baseline"
- "peer_country_baseline"
- "ideal_civilisation_baseline"
REQUIRED_FIELDS:
- "time_period"
- "territory"
- "population_group"
- "source_set"
- "confidence_level"
- "baseline_values"
LEDGER:
DEFINITION: "Record of what changed, when, how much, and with what consequences."
STORES:
- "score_history"
- "delta_history"
- "event_history"
- "shock_history"
- "repair_history"
- "survey_history"
- "institutional_history"
- "planet_history"
- "war_history"
- "disaster_history"
VOLATILITY_SCORE:
DEFINITION: "How unstable, pressured, reactive, anxious, or unsettled society feels while change moves through it."
RANGE: "0-100"
HIGH_IS_BAD: true
SOCIETY_INDICATOR_SCORE:
DEFINITION: "Overall society functioning score after combining trust, stability, capability, culture, institutions, economy, human wellbeing, planet conditions, resilience, and volatility."
RANGE: "0-100"
HIGH_IS_GOOD: true
EQUILIBRIUM_SCORE:
DEFINITION: "How well society has settled into a working balance after forces and shocks."
RANGE: "0-100"
HIGH_IS_GOOD: true
PAPER_REALITY_GAP:
DEFINITION: "Difference between official/formal system health and lived human experience."
RANGE: "0-100"
HIGH_IS_BAD: true
PLANETOS_PRESSURE:
DEFINITION: "Earth-system and natural condition pressure felt by society."
RANGE: "0-100"
HIGH_IS_BAD: true
WAR_SHOCK:
DEFINITION: "Conflict, invasion, terrorism, sudden war, regional war, civil unrest, or security shock pressure."
RANGE: "0-100"
HIGH_IS_BAD: true
DISASTER_SHOCK:
DEFINITION: "Natural disaster, climate event, earthquake, flood, fire, drought, cyclone, epidemic, or infrastructure shock."
RANGE: "0-100"
HIGH_IS_BAD: true
EXPERTSOURCE_10_10_CROSSWALK:
PURPOSE:
- "Map established source families into SocietyOS variables."
- "Use source families as evidence anchors."
- "Do not copy source language."
- "Use as calibration, not authority worship."
SOURCE_QUALITY_TIERS:
TIER_10:
DESCRIPTION: "Primary institutional datasets, long-running international surveys, official statistical agencies, peer-reviewed global indices, event databases."
EXAMPLES:
- "World Values Survey"
- "European Values Study"
- "European Social Survey"
- "Asian Barometer"
- "Afrobarometer"
- "Arab Barometer"
- "Latinobarometro"
- "OECD Trust Survey"
- "Gallup World Poll"
- "World Bank World Development Indicators"
- "Worldwide Governance Indicators"
- "World Justice Project Rule of Law Index"
- "V-Dem"
- "UNDP Human Development Index"
- "UNESCO education/culture/statistics datasets"
- "OECD PISA"
- "WHO Global Health Observatory"
- "ILO labour statistics"
- "IMF macroeconomic datasets"
- "UCDP conflict data"
- "ACLED event conflict data"
- "EM-DAT disaster database"
- "INFORM Risk Index"
- "ND-GAIN"
- "IPCC assessment material"
- "NASA/NOAA climate indicators"
- "FAO food security data"
- "UNHCR displacement data"
TIER_8:
DESCRIPTION: "High-quality academic papers, national surveys, central bank reports, government statistical releases, major university datasets."
EXAMPLES:
- "national household surveys"
- "central bank inflation reports"
- "national labour force survey"
- "national census"
- "university longitudinal studies"
- "public health surveillance reports"
TIER_6:
DESCRIPTION: "Reliable media, NGO reports, think tank reports, audited policy reports."
USAGE:
- "Use for context."
- "Do not overweight unless corroborated."
- "Treat as narrative or secondary signal."
TIER_4:
DESCRIPTION: "Social media, anecdotal reports, opinion columns, viral claims."
USAGE:
- "Use as weak volatility/noise signal."
- "Never use alone for structural score."
- "Can be used for emotional temperature and early shadow signal."
CROSSWALK_TABLE:
TRUST:
SOURCE_FAMILIES:
- "OECD Trust Survey"
- "WVS"
- "Gallup World Poll"
- "ESS"
- "regional barometers"
SOCIETYOS_VARIABLES:
- "institutional_trust"
- "interpersonal_trust"
- "fairness_belief"
- "public_confidence"
- "legitimacy"
CULTURE:
SOURCE_FAMILIES:
- "WVS"
- "EVS"
- "ESS"
- "UNESCO culture indicators"
- "regional barometers"
SOCIETYOS_VARIABLES:
- "norm_coherence"
- "value_alignment"
- "identity_stability"
- "social_belonging"
- "cultural_shear"
HUMAN_WELLBEING:
SOURCE_FAMILIES:
- "Gallup World Poll"
- "WHO"
- "UNDP HDI"
- "OECD Better Life"
- "national health surveys"
SOCIETYOS_VARIABLES:
- "life_satisfaction"
- "mental_load"
- "health_security"
- "future_confidence"
- "stress_level"
GOVERNANCE:
SOURCE_FAMILIES:
- "WGI"
- "WJP Rule of Law"
- "V-Dem"
- "national government performance indicators"
SOCIETYOS_VARIABLES:
- "rule_of_law"
- "voice_accountability"
- "corruption_control"
- "state_capacity"
- "policy_clarity"
ECONOMIC_PRESSURE:
SOURCE_FAMILIES:
- "World Bank"
- "IMF"
- "ILO"
- "national statistics"
- "central bank data"
SOCIETYOS_VARIABLES:
- "cost_pressure"
- "employment_security"
- "income_stress"
- "inflation_pressure"
- "housing_pressure"
- "debt_pressure"
EDUCATION:
SOURCE_FAMILIES:
- "OECD PISA"
- "UNESCO UIS"
- "national education statistics"
- "school wellbeing surveys"
SOCIETYOS_VARIABLES:
- "education_access"
- "education_stress"
- "mobility_belief"
- "future_route_openness"
- "youth_pressure"
CONFLICT_SECURITY:
SOURCE_FAMILIES:
- "UCDP"
- "ACLED"
- "UNHCR"
- "Global Peace Index"
- "national crime/security data"
SOCIETYOS_VARIABLES:
- "war_shock"
- "conflict_intensity"
- "displacement_pressure"
- "security_fear"
- "social_order_stress"
PLANETOS:
SOURCE_FAMILIES:
- "EM-DAT"
- "INFORM Risk"
- "ND-GAIN"
- "IPCC"
- "NASA"
- "NOAA"
- "FAO"
- "WHO climate-health data"
SOCIETYOS_VARIABLES:
- "climate_pressure"
- "disaster_exposure"
- "food_water_stress"
- "heat_stress"
- "earth_system_change"
- "planet_floor_degradation"
INPUT_SCHEMA:
REQUIRED_INPUTS:
META:
society_id: "string"
territory: "string"
population_scope: "national | regional | city | community | institution | group"
date_start: "YYYY-MM-DD"
date_end: "YYYY-MM-DD"
baseline_period: "YYYY-MM-DD/YYYY-MM-DD"
ztime_window: "daily | weekly | monthly | annual | 5_year | 10_year | 25_year"
confidence_mode: "strict | balanced | exploratory"
RAW_VARIABLES_0_TO_100:
TRUST:
institutional_trust: "0-100 high_good"
interpersonal_trust: "0-100 high_good"
fairness_belief: "0-100 high_good"
legitimacy_confidence: "0-100 high_good"
trust_in_future: "0-100 high_good"
GOVERNANCE:
rule_of_law: "0-100 high_good"
corruption_control: "0-100 high_good"
policy_clarity: "0-100 high_good"
state_capacity: "0-100 high_good"
responsiveness: "0-100 high_good"
CULTURE:
norm_coherence: "0-100 high_good"
belonging: "0-100 high_good"
shared_reality: "0-100 high_good"
cultural_shear: "0-100 high_bad"
identity_fragmentation: "0-100 high_bad"
HUMAN:
life_satisfaction: "0-100 high_good"
mental_health_security: "0-100 high_good"
stress_level: "0-100 high_bad"
loneliness: "0-100 high_bad"
future_confidence: "0-100 high_good"
adaptation_capacity: "0-100 high_good"
ECONOMY:
cost_pressure: "0-100 high_bad"
housing_pressure: "0-100 high_bad"
food_energy_pressure: "0-100 high_bad"
employment_security: "0-100 high_good"
income_security: "0-100 high_good"
inequality_pressure: "0-100 high_bad"
EDUCATION:
education_access: "0-100 high_good"
education_pressure: "0-100 high_bad"
youth_route_openness: "0-100 high_good"
skills_adaptability: "0-100 high_good"
intergenerational_mobility_belief: "0-100 high_good"
SECURITY:
personal_safety: "0-100 high_good"
crime_pressure: "0-100 high_bad"
conflict_pressure: "0-100 high_bad"
war_proximity: "0-100 high_bad"
displacement_pressure: "0-100 high_bad"
PLANETOS:
disaster_exposure: "0-100 high_bad"
disaster_recent_impact: "0-100 high_bad"
climate_stress: "0-100 high_bad"
heat_stress: "0-100 high_bad"
water_food_stress: "0-100 high_bad"
biodiversity_ecosystem_loss: "0-100 high_bad"
planet_buffer_capacity: "0-100 high_good"
MEDIA_INFORMATION:
media_temperature: "0-100 high_bad"
misinformation_pressure: "0-100 high_bad"
narrative_polarisation: "0-100 high_bad"
source_trust: "0-100 high_good"
information_clarity: "0-100 high_good"
REPAIR:
repair_capacity: "0-100 high_good"
crisis_response_capacity: "0-100 high_good"
social_safety_net: "0-100 high_good"
institutional_learning: "0-100 high_good"
community_support: "0-100 high_good"
PAPER_SOCIETY:
official_rule_quality: "0-100 high_good"
official_performance_claim: "0-100 high_good"
lived_experience_score: "0-100 high_good"
citizen_confidence_score: "0-100 high_good"
EVENT_INPUTS:
EVENTS:
- event_id: "string"
event_type: "natural_disaster | quick_war | civil_unrest | economic_shock | pandemic | technology_shock | policy_shock | climate_event | earth_change | cultural_shock"
date: "YYYY-MM-DD"
duration_days: "integer"
affected_population_pct: "0-100"
geographic_spread: "0-100"
casualty_severity: "0-100"
displacement_severity: "0-100"
infrastructure_damage: "0-100"
economic_damage: "0-100"
symbolic_shock: "0-100"
media_amplification: "0-100"
trust_relevance: "0-100"
recovery_visibility: "0-100 high_good"
institutional_response_quality: "0-100 high_good"
NORMALISATION_RULES:
FUNCTION_NORMALISE_TO_0_100:
INPUT: "raw_value, raw_min, raw_max, high_good_boolean"
CODE: |
x = 100 * (raw_value - raw_min) / (raw_max - raw_min)
x = clamp(x, 0, 100)
if high_good_boolean == false:
x = 100 - x
return x
FUNCTION_CLAMP:
CODE: |
clamp(x, lo, hi):
if x < lo: return lo
if x > hi: return hi
return x
FUNCTION_MISSING_DATA:
RULES:
- "If variable missing and domain has sibling variables, impute domain median and reduce confidence."
- "If entire domain missing, use peer baseline only in exploratory mode."
- "In strict mode, do not calculate final score if more than 25% of weighted inputs are missing."
- "All imputed values must be flagged."
MISSING_DATA_CONFIDENCE_PENALTY:
CODE: |
missing_weight_pct = sum(weights_of_missing_inputs)
confidence_penalty = missing_weight_pct * 0.75
confidence_score = clamp(100 - confidence_penalty, 0, 100)
SOURCE_CONFIDENCE_WEIGHT:
TIER_10: 1.00
TIER_8: 0.85
TIER_6: 0.65
TIER_4: 0.35
RECENCY_DECAY:
CODE: |
age_days = current_date - source_date
if age_days <= 30: recency_weight = 1.00
elif age_days <= 365: recency_weight = 0.90
elif age_days <= 1095: recency_weight = 0.75
else: recency_weight = 0.55
FINAL_SOURCE_WEIGHT:
CODE: |
evidence_weight = source_confidence_weight * recency_weight * methodology_quality_weight
DOMAIN_SCORE_CALCULATION:
NOTE: "All domain scores return 0-100 high_good unless explicitly labelled pressure/volatility high_bad."
TRUST_SCORE:
WEIGHTS:
institutional_trust: 0.25
interpersonal_trust: 0.20
fairness_belief: 0.25
legitimacy_confidence: 0.20
trust_in_future: 0.10
CODE: |
TrustScore =
0.25*institutional_trust
+ 0.20*interpersonal_trust
+ 0.25*fairness_belief
+ 0.20*legitimacy_confidence
+ 0.10*trust_in_future
GOVERNANCE_SCORE:
WEIGHTS:
rule_of_law: 0.25
corruption_control: 0.20
policy_clarity: 0.20
state_capacity: 0.20
responsiveness: 0.15
CODE: |
GovernanceScore =
0.25*rule_of_law
+ 0.20*corruption_control
+ 0.20*policy_clarity
+ 0.20*state_capacity
+ 0.15*responsiveness
CULTURE_SCORE:
TRANSFORM:
cultural_shear_good = 100 - cultural_shear
identity_fragmentation_good = 100 - identity_fragmentation
WEIGHTS:
norm_coherence: 0.25
belonging: 0.25
shared_reality: 0.25
cultural_shear_good: 0.15
identity_fragmentation_good: 0.10
CODE: |
CultureScore =
0.25*norm_coherence
+ 0.25*belonging
+ 0.25*shared_reality
+ 0.15*(100-cultural_shear)
+ 0.10*(100-identity_fragmentation)
HUMAN_SCORE:
TRANSFORM:
stress_good = 100 - stress_level
loneliness_good = 100 - loneliness
WEIGHTS:
life_satisfaction: 0.20
mental_health_security: 0.20
stress_good: 0.20
loneliness_good: 0.10
future_confidence: 0.20
adaptation_capacity: 0.10
CODE: |
HumanScore =
0.20*life_satisfaction
+ 0.20*mental_health_security
+ 0.20*(100-stress_level)
+ 0.10*(100-loneliness)
+ 0.20*future_confidence
+ 0.10*adaptation_capacity
ECONOMY_SCORE:
TRANSFORM:
cost_good = 100 - cost_pressure
housing_good = 100 - housing_pressure
food_energy_good = 100 - food_energy_pressure
inequality_good = 100 - inequality_pressure
WEIGHTS:
cost_good: 0.20
housing_good: 0.20
food_energy_good: 0.15
employment_security: 0.20
income_security: 0.15
inequality_good: 0.10
CODE: |
EconomyScore =
0.20*(100-cost_pressure)
+ 0.20*(100-housing_pressure)
+ 0.15*(100-food_energy_pressure)
+ 0.20*employment_security
+ 0.15*income_security
+ 0.10*(100-inequality_pressure)
EDUCATION_SCORE:
TRANSFORM:
education_pressure_good = 100 - education_pressure
WEIGHTS:
education_access: 0.25
education_pressure_good: 0.20
youth_route_openness: 0.25
skills_adaptability: 0.20
intergenerational_mobility_belief: 0.10
CODE: |
EducationScore =
0.25*education_access
+ 0.20*(100-education_pressure)
+ 0.25*youth_route_openness
+ 0.20*skills_adaptability
+ 0.10*intergenerational_mobility_belief
SECURITY_SCORE:
TRANSFORM:
crime_good = 100 - crime_pressure
conflict_good = 100 - conflict_pressure
war_good = 100 - war_proximity
displacement_good = 100 - displacement_pressure
WEIGHTS:
personal_safety: 0.30
crime_good: 0.20
conflict_good: 0.20
war_good: 0.20
displacement_good: 0.10
CODE: |
SecurityScore =
0.30*personal_safety
+ 0.20*(100-crime_pressure)
+ 0.20*(100-conflict_pressure)
+ 0.20*(100-war_proximity)
+ 0.10*(100-displacement_pressure)
PLANETOS_SCORE:
TRANSFORM:
disaster_exposure_good = 100 - disaster_exposure
disaster_recent_good = 100 - disaster_recent_impact
climate_good = 100 - climate_stress
heat_good = 100 - heat_stress
water_food_good = 100 - water_food_stress
ecosystem_good = 100 - biodiversity_ecosystem_loss
WEIGHTS:
disaster_exposure_good: 0.15
disaster_recent_good: 0.15
climate_good: 0.15
heat_good: 0.10
water_food_good: 0.20
ecosystem_good: 0.10
planet_buffer_capacity: 0.15
CODE: |
PlanetOSScore =
0.15*(100-disaster_exposure)
+ 0.15*(100-disaster_recent_impact)
+ 0.15*(100-climate_stress)
+ 0.10*(100-heat_stress)
+ 0.20*(100-water_food_stress)
+ 0.10*(100-biodiversity_ecosystem_loss)
+ 0.15*planet_buffer_capacity
INFORMATION_SCORE:
TRANSFORM:
media_temperature_good = 100 - media_temperature
misinformation_good = 100 - misinformation_pressure
narrative_polarisation_good = 100 - narrative_polarisation
WEIGHTS:
media_temperature_good: 0.20
misinformation_good: 0.25
narrative_polarisation_good: 0.20
source_trust: 0.20
information_clarity: 0.15
CODE: |
InformationScore =
0.20*(100-media_temperature)
+ 0.25*(100-misinformation_pressure)
+ 0.20*(100-narrative_polarisation)
+ 0.20*source_trust
+ 0.15*information_clarity
REPAIR_SCORE:
WEIGHTS:
repair_capacity: 0.25
crisis_response_capacity: 0.25
social_safety_net: 0.20
institutional_learning: 0.15
community_support: 0.15
CODE: |
RepairScore =
0.25*repair_capacity
+ 0.25*crisis_response_capacity
+ 0.20*social_safety_net
+ 0.15*institutional_learning
+ 0.15*community_support
VOLATILITY_SCORE_ENGINE:
PURPOSE:
- "Measure how hard society is shaking."
- "Measure how hard humans feel time, change, pressure, shock, war, disaster, cost, and uncertainty."
- "Detect whether equilibrium has returned."
PRIMARY_LAW:
CODE: |
if ChangeSpeed > AdaptationCapacity:
Volatility rises
if HumanAdaptation catches up with ChangeSpeed:
Volatility falls
if RepairCapacity > PressureLoad:
Volatility can convert into upgrade
if RepairCapacity < PressureLoad:
Volatility becomes instability
COMPONENTS_HIGH_BAD:
ChangeSpeed:
DESCRIPTION: "Speed at which conditions are changing."
INPUTS:
- "policy_change_rate"
- "cost_change_rate"
- "technology_change_rate"
- "migration_change_rate"
- "climate_change_rate"
- "security_change_rate"
DEFAULT_PROXY: "average absolute delta across major domains"
PressureLoad:
DESCRIPTION: "Total stress load on people."
INPUTS:
- "cost_pressure"
- "housing_pressure"
- "food_energy_pressure"
- "education_pressure"
- "work_pressure"
- "health_pressure"
- "family_pressure"
UncertaintyLoad:
DESCRIPTION: "How unclear future conditions feel."
INPUTS:
- "job_uncertainty"
- "policy_uncertainty"
- "economic_uncertainty"
- "security_uncertainty"
- "climate_uncertainty"
- "education_route_uncertainty"
TrustStress:
DESCRIPTION: "Inverse of trust buffer."
CODE: |
TrustStress = 100 - TrustScore
EmotionalHeat:
DESCRIPTION: "Public emotional temperature."
INPUTS:
- "anger"
- "fear"
- "anxiety"
- "resentment"
- "hopelessness"
- "media_temperature"
AdaptationDifficulty:
DESCRIPTION: "How hard it is for people to adjust."
CODE: |
AdaptationDifficulty = 100 - adaptation_capacity
FutureFear:
DESCRIPTION: "Fear that future routes are closing."
CODE: |
FutureFear = 100 - future_confidence
PlanetShockPressure:
DESCRIPTION: "Felt pressure from earth changes, climate, disaster, food, water, heat."
CODE: |
PlanetShockPressure =
0.20*disaster_recent_impact
+ 0.15*disaster_exposure
+ 0.15*climate_stress
+ 0.15*heat_stress
+ 0.20*water_food_stress
+ 0.15*(100-planet_buffer_capacity)
WarShockPressure:
DESCRIPTION: "Felt pressure from quick wars, sudden conflict, security fear."
CODE: |
WarShockPressure =
0.25*war_proximity
+ 0.25*conflict_pressure
+ 0.20*displacement_pressure
+ 0.15*security_fear
+ 0.15*media_amplification_of_war
InformationShockPressure:
DESCRIPTION: "Felt pressure from information disorder and narrative heat."
CODE: |
InformationShockPressure =
0.30*media_temperature
+ 0.30*misinformation_pressure
+ 0.25*narrative_polarisation
+ 0.15*(100-information_clarity)
VOLATILITY_WEIGHTS_BASE:
ChangeSpeed: 0.12
PressureLoad: 0.15
UncertaintyLoad: 0.12
TrustStress: 0.12
EmotionalHeat: 0.12
AdaptationDifficulty: 0.10
FutureFear: 0.10
PlanetShockPressure: 0.07
WarShockPressure: 0.06
InformationShockPressure: 0.04
VOLATILITY_CODE: |
VolatilityScore =
0.12*ChangeSpeed
+ 0.15*PressureLoad
+ 0.12*UncertaintyLoad
+ 0.12*(100-TrustScore)
+ 0.12*EmotionalHeat
+ 0.10*(100-adaptation_capacity)
+ 0.10*(100-future_confidence)
+ 0.07*PlanetShockPressure
+ 0.06*WarShockPressure
+ 0.04*InformationShockPressure
VolatilityScore = clamp(VolatilityScore, 0, 100)
VOLATILITY_ZONE:
CODE: |
if VolatilityScore <= 20:
zone = "CALM"
elif VolatilityScore <= 40:
zone = "WARM"
elif VolatilityScore <= 60:
zone = "UNSETTLED"
elif VolatilityScore <= 80:
zone = "VOLATILE"
else:
zone = "CRITICAL"
VOLATILITY_INTERPRETATION:
CALM:
SCORE_RANGE: "0-20"
MEANING: "Change is absorbable. Society feels settled."
WARM:
SCORE_RANGE: "21-40"
MEANING: "Pressure exists, but buffers hold."
UNSETTLED:
SCORE_RANGE: "41-60"
MEANING: "People feel the change. Adaptation is strained."
VOLATILE:
SCORE_RANGE: "61-80"
MEANING: "Society feels reactive, pressured, unstable."
CRITICAL:
SCORE_RANGE: "81-100"
MEANING: "Trust, adaptation, and future confidence are under severe stress."
EVENT_SHOCK_MODULE:
PURPOSE:
- "Calculate sudden shocks from natural disasters, quick wars, earth changes, and fast crises."
- "Convert event severity into human-feel volatility."
- "Track shock decay and repair."
EVENT_TYPES:
natural_disaster:
EXAMPLES:
- "earthquake"
- "flood"
- "cyclone"
- "wildfire"
- "drought"
- "landslide"
- "tsunami"
- "heatwave"
FEEL_CHANNELS:
- "safety_fear"
- "home_loss"
- "food_water_insecurity"
- "displacement"
- "grief"
- "infrastructure_loss"
- "trust_in_response"
quick_war:
EXAMPLES:
- "sudden invasion"
- "missile exchange"
- "border war"
- "terror attack"
- "civil conflict spike"
- "maritime blockade"
- "airspace crisis"
FEEL_CHANNELS:
- "security_fear"
- "future_uncertainty"
- "economic_fear"
- "family_safety"
- "national_identity_pressure"
- "trust_in_leadership"
- "information_fog"
earth_change:
EXAMPLES:
- "sea level stress"
- "chronic heat rise"
- "water shortage"
- "food system stress"
- "ecosystem loss"
- "disease ecology shift"
- "air quality decline"
FEEL_CHANNELS:
- "long_term_fear"
- "cost_of_living_pressure"
- "health_anxiety"
- "migration_pressure"
- "future_floor_loss"
- "planet_floor_degradation"
EVENT_SEVERITY_SCORE:
INPUTS_HIGH_BAD:
affected_population_pct: 0.15
geographic_spread: 0.10
casualty_severity: 0.15
displacement_severity: 0.15
infrastructure_damage: 0.15
economic_damage: 0.10
symbolic_shock: 0.10
media_amplification: 0.05
trust_relevance: 0.05
CODE: |
EventSeverity =
0.15*affected_population_pct
+ 0.10*geographic_spread
+ 0.15*casualty_severity
+ 0.15*displacement_severity
+ 0.15*infrastructure_damage
+ 0.10*economic_damage
+ 0.10*symbolic_shock
+ 0.05*media_amplification
+ 0.05*trust_relevance
EventSeverity = clamp(EventSeverity, 0, 100)
RESPONSE_BUFFER_SCORE:
INPUTS_HIGH_GOOD:
recovery_visibility: 0.25
institutional_response_quality: 0.30
crisis_response_capacity: 0.25
community_support: 0.20
CODE: |
ResponseBuffer =
0.25*recovery_visibility
+ 0.30*institutional_response_quality
+ 0.25*crisis_response_capacity
+ 0.20*community_support
ResponseBuffer = clamp(ResponseBuffer, 0, 100)
SHOCK_TO_HUMAN_FEEL:
CODE: |
HumanFeelShock = EventSeverity * (1 - ResponseBuffer/150)
# ResponseBuffer of 0 gives full shock.
# ResponseBuffer of 75 reduces felt shock by 50%.
# ResponseBuffer of 100 reduces felt shock by 66.7%.
# Strong response does not erase shock; it reduces volatility transmission.
HumanFeelShock = clamp(HumanFeelShock, 0, 100)
SHOCK_DECAY:
PURPOSE:
- "Model how shock fades or persists across time."
- "Fast disaster may fade if repair is visible."
- "War and earth changes decay slower."
HALF_LIFE_DAYS:
natural_disaster: 90
quick_war: 180
civil_unrest: 150
economic_shock: 240
pandemic: 360
climate_event: 300
earth_change: 720
cultural_shock: 240
technology_shock: 180
policy_shock: 120
CODE: |
days_since_event = current_date - event_date
half_life = HALF_LIFE_DAYS[event_type]
decay_factor = 0.5 ** (days_since_event / half_life)
ActiveShock = HumanFeelShock * decay_factor
if repeated_event == true:
ActiveShock = ActiveShock * repeat_multiplier
ActiveShock = clamp(ActiveShock, 0, 100)
REPEATED_EVENT_MULTIPLIER:
CODE: |
if similar_events_last_365_days == 0:
repeat_multiplier = 1.00
elif similar_events_last_365_days == 1:
repeat_multiplier = 1.15
elif similar_events_last_365_days <= 3:
repeat_multiplier = 1.30
else:
repeat_multiplier = 1.50
MULTI_EVENT_AGGREGATION:
PURPOSE:
- "Avoid simple addition beyond 100."
- "Use saturation curve so multiple shocks compound but cap."
CODE: |
# active_shocks = list of ActiveShock values from all events
CombinedShock = 100 * (1 - product_over_events(1 - ActiveShock_i/100))
CombinedShock = clamp(CombinedShock, 0, 100)
SHOCK_CLASSIFICATION:
CODE: |
if CombinedShock <= 20:
ShockZone = "LOW_SHOCK"
elif CombinedShock <= 40:
ShockZone = "MODERATE_SHOCK"
elif CombinedShock <= 60:
ShockZone = "HIGH_SHOCK"
elif CombinedShock <= 80:
ShockZone = "SEVERE_SHOCK"
else:
ShockZone = "SYSTEMIC_SHOCK"
EQUILIBRIUM_SCORE_ENGINE:
PURPOSE:
- "Detect whether society has settled."
- "Separate real equilibrium from false calm."
- "Show if society settled higher, lower, or in fragile balance."
EQUILIBRIUM_COMPONENTS:
StabilityBuffer:
CODE: |
StabilityBuffer =
0.25*TrustScore
+ 0.20*GovernanceScore
+ 0.15*SecurityScore
+ 0.15*RepairScore
+ 0.15*InformationScore
+ 0.10*CultureScore
PressureBurden:
CODE: |
PressureBurden =
0.25*VolatilityScore
+ 0.20*CombinedShock
+ 0.15*cost_pressure
+ 0.10*housing_pressure
+ 0.10*education_pressure
+ 0.10*conflict_pressure
+ 0.10*PlanetShockPressure
FutureSettlement:
CODE: |
FutureSettlement =
0.30*future_confidence
+ 0.20*youth_route_openness
+ 0.20*intergenerational_mobility_belief
+ 0.15*skills_adaptability
+ 0.15*planet_buffer_capacity
EQUILIBRIUM_SCORE_CODE: |
EquilibriumScore =
0.45*StabilityBuffer
+ 0.35*FutureSettlement
+ 0.20*RepairScore
- 0.35*PressureBurden
EquilibriumScore = clamp(EquilibriumScore, 0, 100)
FALSE_EQUILIBRIUM_DETECTOR:
PURPOSE:
- "Detect calm by exhaustion, fear, resignation, suppression, or paper-performance only."
INPUTS:
visible_calm: "0-100 high_good"
lived_trust: "TrustScore"
complaint_suppression_risk: "0-100 high_bad"
participation_decline: "0-100 high_bad"
hidden_resentment: "0-100 high_bad"
paper_reality_gap: "0-100 high_bad"
CODE: |
FalseEquilibriumRisk =
0.20*visible_calm
+ 0.20*complaint_suppression_risk
+ 0.20*participation_decline
+ 0.20*hidden_resentment
+ 0.20*paper_reality_gap
- 0.30*TrustScore
FalseEquilibriumRisk = clamp(FalseEquilibriumRisk, 0, 100)
EQUILIBRIUM_ZONE:
CODE: |
if EquilibriumScore >= 80 and FalseEquilibriumRisk < 30:
EquilibriumZone = "HEALTHY_DYNAMIC_EQUILIBRIUM"
elif EquilibriumScore >= 60 and FalseEquilibriumRisk < 50:
EquilibriumZone = "WORKING_EQUILIBRIUM"
elif EquilibriumScore >= 45:
EquilibriumZone = "FRAGILE_EQUILIBRIUM"
elif FalseEquilibriumRisk >= 60:
EquilibriumZone = "FALSE_EQUILIBRIUM"
elif EquilibriumScore >= 30:
EquilibriumZone = "UNSTABLE_EQUILIBRIUM"
else:
EquilibriumZone = "EQUILIBRIUM_FAILURE"
PAPER_REALITY_GAP_ENGINE:
PURPOSE:
- "Detect difference between official society and lived society."
- "Prevent paper equilibrium from hiding real pressure."
PAPER_SCORE:
CODE: |
PaperScore =
0.35*official_rule_quality
+ 0.35*official_performance_claim
+ 0.15*GovernanceScore
+ 0.15*SecurityScore
PaperScore = clamp(PaperScore, 0, 100)
LIVED_SCORE:
CODE: |
LivedScore =
0.25*lived_experience_score
+ 0.20*HumanScore
+ 0.20*TrustScore
+ 0.15*EconomyScore
+ 0.10*CultureScore
+ 0.10*future_confidence
LivedScore = clamp(LivedScore, 0, 100)
PAPER_REALITY_GAP:
CODE: |
PaperRealityGap = abs(PaperScore - LivedScore)
if PaperScore > LivedScore:
GapType = "PAPER_OVERSTATES_REALITY"
elif LivedScore > PaperScore:
GapType = "LIVED_REALITY_OUTPERFORMS_PAPER"
else:
GapType = "PAPER_LIVED_ALIGNED"
GAP_ZONE:
CODE: |
if PaperRealityGap <= 10:
GapZone = "ALIGNED"
elif PaperRealityGap <= 25:
GapZone = "WATCH_GAP"
elif PaperRealityGap <= 45:
GapZone = "SERIOUS_GAP"
else:
GapZone = "DANGEROUS_GAP"
SOCIETY_INDICATOR_SCORE_ENGINE:
PURPOSE:
- "Produce final overall Society Indicator Score."
- "High score means society is broadly functioning, adaptive, trusted, resilient, and future-capable."
- "Score is reduced by volatility, shock, and paper-reality gap."
BASE_DOMAIN_WEIGHTS:
TrustScore: 0.14
GovernanceScore: 0.12
CultureScore: 0.10
HumanScore: 0.13
EconomyScore: 0.12
EducationScore: 0.10
SecurityScore: 0.10
PlanetOSScore: 0.08
InformationScore: 0.05
RepairScore: 0.06
BASE_SOCIETY_SCORE_CODE: |
BaseSocietyScore =
0.14*TrustScore
+ 0.12*GovernanceScore
+ 0.10*CultureScore
+ 0.13*HumanScore
+ 0.12*EconomyScore
+ 0.10*EducationScore
+ 0.10*SecurityScore
+ 0.08*PlanetOSScore
+ 0.05*InformationScore
+ 0.06*RepairScore
BaseSocietyScore = clamp(BaseSocietyScore, 0, 100)
PENALTY_MODULE:
PURPOSE:
- "Apply penalties for high volatility, shocks, paper-reality gap, and false equilibrium."
CODE: |
VolatilityPenalty = 0.20 * VolatilityScore
ShockPenalty = 0.15 * CombinedShock
PaperGapPenalty = 0.10 * PaperRealityGap
FalseEquilibriumPenalty = 0.10 * FalseEquilibriumRisk
TotalPenalty =
VolatilityPenalty
+ ShockPenalty
+ PaperGapPenalty
+ FalseEquilibriumPenalty
TotalPenalty = clamp(TotalPenalty, 0, 45)
RESILIENCE_BONUS_MODULE:
PURPOSE:
- "Reward societies that absorb shocks well."
- "Bonus cannot erase severe structural failure."
CODE: |
ResilienceBonus =
0.08*RepairScore
+ 0.05*TrustScore
+ 0.04*GovernanceScore
+ 0.03*community_support
if VolatilityScore > 75:
ResilienceBonus = ResilienceBonus * 0.50
if PaperRealityGap > 50:
ResilienceBonus = ResilienceBonus * 0.60
ResilienceBonus = clamp(ResilienceBonus, 0, 12)
FINAL_SCORE_CODE: |
SocietyIndicatorScore =
BaseSocietyScore
- TotalPenalty
+ ResilienceBonus
SocietyIndicatorScore = clamp(SocietyIndicatorScore, 0, 100)
SCORE_ZONE:
CODE: |
if SocietyIndicatorScore >= 85:
SocietyZone = "STRONG_STABLE_ADAPTIVE"
elif SocietyIndicatorScore >= 70:
SocietyZone = "FUNCTIONAL_STABLE"
elif SocietyIndicatorScore >= 55:
SocietyZone = "FUNCTIONAL_UNDER_PRESSURE"
elif SocietyIndicatorScore >= 40:
SocietyZone = "FRAGILE_STRESSED"
elif SocietyIndicatorScore >= 25:
SocietyZone = "UNSTABLE_HIGH_RISK"
else:
SocietyZone = "SYSTEM_FAILURE_RISK"
DELTA_ENGINE:
PURPOSE:
- "Track movement from Zero Pin."
- "Detect whether society moved up, down, or sideways."
- "Detect if equilibrium returned higher or lower."
DELTA_CALCULATION:
CODE: |
DeltaSocietyScore = CurrentSocietyIndicatorScore - BaselineSocietyIndicatorScore
DeltaVolatility = CurrentVolatilityScore - BaselineVolatilityScore
DeltaEquilibrium = CurrentEquilibriumScore - BaselineEquilibriumScore
DeltaTrust = CurrentTrustScore - BaselineTrustScore
DeltaFutureConfidence = CurrentFutureConfidence - BaselineFutureConfidence
DeltaPlanetOS = CurrentPlanetOSScore - BaselinePlanetOSScore
MOVEMENT_CLASSIFICATION:
CODE: |
if DeltaSocietyScore >= 10 and DeltaEquilibrium >= 5:
Movement = "MOVED_UP"
elif DeltaSocietyScore <= -10 and DeltaEquilibrium <= -5:
Movement = "MOVED_DOWN"
elif abs(DeltaSocietyScore) < 5 and VolatilityScore <= 40:
Movement = "SETTLED_NEAR_BASELINE"
elif abs(DeltaSocietyScore) < 5 and VolatilityScore > 60:
Movement = "SHAKING_WITHOUT_CLEAR_MOVEMENT"
elif DeltaSocietyScore > 0 and VolatilityScore > 60:
Movement = "UPGRADE_UNDER_HIGH_STRESS"
elif DeltaSocietyScore < 0 and VolatilityScore < 40:
Movement = "QUIET_DECLINE"
else:
Movement = "MIXED_MOVEMENT"
EQUILIBRIUM_RETURN_TEST:
CODE: |
if VolatilityScore < 40 and EquilibriumScore >= 60 and FalseEquilibriumRisk < 40:
EquilibriumReturned = true
else:
EquilibriumReturned = false
HIGHER_OR_LOWER_SETTLEMENT:
CODE: |
if EquilibriumReturned == true:
if SocietyIndicatorScore >= BaselineSocietyIndicatorScore + 5:
SettlementType = "HIGHER_EQUILIBRIUM"
elif SocietyIndicatorScore <= BaselineSocietyIndicatorScore - 5:
SettlementType = "LOWER_EQUILIBRIUM"
else:
SettlementType = "SIMILAR_EQUILIBRIUM"
else:
SettlementType = "NOT_SETTLED"
HUMAN_FEEL_SENSOR_ENGINE:
PURPOSE:
- "Detect how humans feel society changing."
- "Translate structural pressure into lived pressure."
- "Include disaster, war, and PlanetOS changes because humans feel them."
HUMAN_FEEL_INDEX:
INPUTS:
stress_level: 0.15
anxiety: 0.12
future_fear: 0.15
cost_pressure: 0.12
safety_fear: 0.10
trust_stress: 0.12
adaptation_difficulty: 0.10
loneliness: 0.06
media_temperature: 0.04
shock_pressure: 0.04
CODE: |
HumanFeelIndex =
0.15*stress_level
+ 0.12*anxiety
+ 0.15*(100-future_confidence)
+ 0.12*cost_pressure
+ 0.10*safety_fear
+ 0.12*(100-TrustScore)
+ 0.10*(100-adaptation_capacity)
+ 0.06*loneliness
+ 0.04*media_temperature
+ 0.04*CombinedShock
HumanFeelIndex = clamp(HumanFeelIndex, 0, 100)
HUMAN_FEEL_ZONE:
CODE: |
if HumanFeelIndex <= 20:
HumanFeelZone = "LOW_PRESSURE"
elif HumanFeelIndex <= 40:
HumanFeelZone = "MANAGEABLE_PRESSURE"
elif HumanFeelIndex <= 60:
HumanFeelZone = "STRAINED"
elif HumanFeelIndex <= 80:
HumanFeelZone = "HIGH_DISTRESS"
else:
HumanFeelZone = "SEVERE_DISTRESS"
STRUCTURAL_TO_HUMAN_TRANSMISSION:
RULES:
- "Natural disaster transmits through safety, home, food, water, grief, and trust in response."
- "Quick war transmits through security fear, uncertainty, information fog, cost, and national identity pressure."
- "Earth change transmits slowly through heat, food, water, health, migration, insurance, housing, and future-floor loss."
- "Economic shock transmits through cost, jobs, debt, housing, and dignity."
- "Education shock transmits through route closure, parental fear, child stress, and future access."
- "Information shock transmits through confusion, distrust, polarisation, and emotional heat."
HUMAN_FEEL_TO_VOLATILITY_LINK:
CODE: |
VolatilityScore_Adjusted =
0.80*VolatilityScore
+ 0.20*HumanFeelIndex
VolatilityScore_Adjusted = clamp(VolatilityScore_Adjusted, 0, 100)
PLANETOS_EARTH_CHANGE_MODULE:
PURPOSE:
- "Add slow and sudden Earth-system changes to society scoring."
- "Treat planet floor as load-bearing civilisation floor."
- "Detect when Earth changes become human social volatility."
PLANET_PRESSURE_TYPES:
SUDDEN:
- "earthquake"
- "flood"
- "storm"
- "wildfire"
- "tsunami"
- "heatwave"
SLOW:
- "sea_level_rise"
- "chronic_heat"
- "water_stress"
- "food_system_stress"
- "biodiversity_loss"
- "soil_degradation"
- "ocean_stress"
- "air_quality_decline"
- "disease_ecology_shift"
PLANET_TO_HUMAN_TRANSMISSION_CODE: |
PlanetHumanTransmission =
0.20*heat_stress
+ 0.20*water_food_stress
+ 0.15*disaster_recent_impact
+ 0.15*disaster_exposure
+ 0.10*climate_stress
+ 0.10*biodiversity_ecosystem_loss
+ 0.10*(100-planet_buffer_capacity)
PlanetHumanTransmission = clamp(PlanetHumanTransmission, 0, 100)
PLANETOS_SOCIAL_RISK:
CODE: |
PlanetSocialRisk =
0.35*PlanetHumanTransmission
+ 0.25*(100-RepairScore)
+ 0.20*(100-GovernanceScore)
+ 0.20*(100-EconomyScore)
PlanetSocialRisk = clamp(PlanetSocialRisk, 0, 100)
PLANET_FLOOR_BURN_SCORE:
DEFINITION: "How much Earth-system degradation burns future civilisation floor space."
CODE: |
PlanetFloorBurn =
0.25*climate_stress
+ 0.20*water_food_stress
+ 0.15*heat_stress
+ 0.15*biodiversity_ecosystem_loss
+ 0.15*disaster_exposure
+ 0.10*(100-planet_buffer_capacity)
PlanetFloorBurn = clamp(PlanetFloorBurn, 0, 100)
PLANETOS_ADJUSTMENT_TO_SOCIETY_SCORE:
CODE: |
if PlanetFloorBurn <= 20:
PlanetPenalty = 0
elif PlanetFloorBurn <= 40:
PlanetPenalty = 2
elif PlanetFloorBurn <= 60:
PlanetPenalty = 5
elif PlanetFloorBurn <= 80:
PlanetPenalty = 9
else:
PlanetPenalty = 14
SocietyIndicatorScore = clamp(SocietyIndicatorScore - PlanetPenalty, 0, 100)
WAR_QUICK_CONFLICT_MODULE:
PURPOSE:
- "Handle quick wars and sudden conflict because humans feel them immediately."
- "Convert war pressure into volatility, trust stress, cost pressure, and future fear."
WAR_INPUTS:
war_proximity: "0-100 high_bad"
conflict_pressure: "0-100 high_bad"
casualty_severity: "0-100 high_bad"
displacement_pressure: "0-100 high_bad"
supply_chain_disruption: "0-100 high_bad"
energy_security_risk: "0-100 high_bad"
national_security_fear: "0-100 high_bad"
information_fog: "0-100 high_bad"
escalation_risk: "0-100 high_bad"
leadership_trust: "0-100 high_good"
WAR_VOLATILITY_PRESSURE:
CODE: |
WarVolatilityPressure =
0.15*war_proximity
+ 0.15*conflict_pressure
+ 0.10*casualty_severity
+ 0.10*displacement_pressure
+ 0.10*supply_chain_disruption
+ 0.10*energy_security_risk
+ 0.10*national_security_fear
+ 0.10*information_fog
+ 0.05*escalation_risk
+ 0.05*(100-leadership_trust)
WarVolatilityPressure = clamp(WarVolatilityPressure, 0, 100)
WAR_TO_HUMAN_FEEL:
CODE: |
WarHumanFeel =
0.35*national_security_fear
+ 0.20*future_fear
+ 0.15*information_fog
+ 0.15*supply_chain_disruption
+ 0.15*(100-leadership_trust)
WarHumanFeel = clamp(WarHumanFeel, 0, 100)
WAR_SCORE_ADJUSTMENT:
CODE: |
VolatilityScore = clamp(VolatilityScore + 0.12*WarVolatilityPressure, 0, 100)
HumanFeelIndex = clamp(HumanFeelIndex + 0.10*WarHumanFeel, 0, 100)
SecurityScore = clamp(SecurityScore - 0.15*WarVolatilityPressure, 0, 100)
FutureSettlement = clamp(FutureSettlement - 0.10*WarHumanFeel, 0, 100)
CULTURE_VOLATILITY_MODULE:
PURPOSE:
- "Measure society/culture volatility."
- "Detect hidden handshake stress, cultural shear, identity conflict, norm drift, and belonging instability."
CULTURE_VOLATILITY_INPUTS:
cultural_shear: 0.20
identity_fragmentation: 0.15
norm_conflict: 0.15
generational_gap: 0.10
language_frame_conflict: 0.10
migration_integration_stress: 0.10
symbolic_conflict: 0.10
belonging_loss: 0.10
CODE: |
CultureVolatility =
0.20*cultural_shear
+ 0.15*identity_fragmentation
+ 0.15*norm_conflict
+ 0.10*generational_gap
+ 0.10*language_frame_conflict
+ 0.10*migration_integration_stress
+ 0.10*symbolic_conflict
+ 0.10*(100-belonging)
CultureVolatility = clamp(CultureVolatility, 0, 100)
CULTURE_EFFECT_ON_VOLATILITY:
CODE: |
VolatilityScore = clamp(
0.90*VolatilityScore
+ 0.10*CultureVolatility,
0,
100
)
CULTURE_EFFECT_ON_EQUILIBRIUM:
CODE: |
if CultureVolatility > 70 and TrustScore < 50:
EquilibriumScore = clamp(EquilibriumScore - 8, 0, 100)
elif CultureVolatility > 50:
EquilibriumScore = clamp(EquilibriumScore - 4, 0, 100)
SCORING_PIPELINE:
STEP_01_LOAD_DATA:
CODE: |
load raw_data
load source_metadata
load event_data
load baseline_data
STEP_02_VALIDATE_SOURCES:
CODE: |
for each source:
assign source_tier
calculate recency_weight
calculate methodology_quality_weight
evidence_weight = source_tier_weight * recency_weight * methodology_quality_weight
STEP_03_NORMALISE_VARIABLES:
CODE: |
for each raw_variable:
normalised_variable = normalise_to_0_100(raw_value, raw_min, raw_max, high_good)
STEP_04_HANDLE_MISSING_DATA:
CODE: |
impute_missing_if_allowed()
flag_imputed_variables()
calculate_confidence_score()
STEP_05_CALCULATE_DOMAIN_SCORES:
CODE: |
TrustScore = calculate_trust_score()
GovernanceScore = calculate_governance_score()
CultureScore = calculate_culture_score()
HumanScore = calculate_human_score()
EconomyScore = calculate_economy_score()
EducationScore = calculate_education_score()
SecurityScore = calculate_security_score()
PlanetOSScore = calculate_planetos_score()
InformationScore = calculate_information_score()
RepairScore = calculate_repair_score()
STEP_06_CALCULATE_EVENT_SHOCKS:
CODE: |
for each event:
EventSeverity = calculate_event_severity(event)
ResponseBuffer = calculate_response_buffer(event)
HumanFeelShock = calculate_human_feel_shock(EventSeverity, ResponseBuffer)
ActiveShock = apply_decay(HumanFeelShock, event_type, date)
CombinedShock = aggregate_active_shocks(active_shocks)
STEP_07_CALCULATE_VOLATILITY:
CODE: |
PlanetShockPressure = calculate_planet_shock_pressure()
WarShockPressure = calculate_war_shock_pressure()
InformationShockPressure = calculate_information_shock_pressure()
CultureVolatility = calculate_culture_volatility()
VolatilityScore = calculate_volatility_score()
HumanFeelIndex = calculate_human_feel_index()
VolatilityScore_Adjusted = 0.80*VolatilityScore + 0.20*HumanFeelIndex
STEP_08_CALCULATE_PAPER_REALITY_GAP:
CODE: |
PaperScore = calculate_paper_score()
LivedScore = calculate_lived_score()
PaperRealityGap = abs(PaperScore - LivedScore)
GapType = classify_gap_type(PaperScore, LivedScore)
STEP_09_CALCULATE_EQUILIBRIUM:
CODE: |
StabilityBuffer = calculate_stability_buffer()
PressureBurden = calculate_pressure_burden()
FutureSettlement = calculate_future_settlement()
EquilibriumScore = calculate_equilibrium_score()
FalseEquilibriumRisk = calculate_false_equilibrium_risk()
EquilibriumZone = classify_equilibrium_zone()
STEP_10_CALCULATE_FINAL_SOCIETY_SCORE:
CODE: |
BaseSocietyScore = calculate_base_society_score()
TotalPenalty = calculate_total_penalty()
ResilienceBonus = calculate_resilience_bonus()
SocietyIndicatorScore = BaseSocietyScore - TotalPenalty + ResilienceBonus
SocietyIndicatorScore = clamp(SocietyIndicatorScore, 0, 100)
SocietyZone = classify_society_zone()
STEP_11_CALCULATE_DELTA:
CODE: |
DeltaSocietyScore = CurrentSocietyIndicatorScore - BaselineSocietyIndicatorScore
DeltaVolatility = CurrentVolatilityScore - BaselineVolatilityScore
DeltaEquilibrium = CurrentEquilibriumScore - BaselineEquilibriumScore
Movement = classify_movement()
SettlementType = classify_settlement()
STEP_12_OUTPUT_LEDGER:
CODE: |
output = {
"SocietyIndicatorScore": SocietyIndicatorScore,
"SocietyZone": SocietyZone,
"VolatilityScore": VolatilityScore_Adjusted,
"VolatilityZone": VolatilityZone,
"HumanFeelIndex": HumanFeelIndex,
"HumanFeelZone": HumanFeelZone,
"EquilibriumScore": EquilibriumScore,
"EquilibriumZone": EquilibriumZone,
"FalseEquilibriumRisk": FalseEquilibriumRisk,
"PaperRealityGap": PaperRealityGap,
"GapType": GapType,
"CombinedShock": CombinedShock,
"ShockZone": ShockZone,
"PlanetFloorBurn": PlanetFloorBurn,
"PlanetSocialRisk": PlanetSocialRisk,
"WarVolatilityPressure": WarVolatilityPressure,
"CultureVolatility": CultureVolatility,
"DeltaSocietyScore": DeltaSocietyScore,
"DeltaVolatility": DeltaVolatility,
"DeltaEquilibrium": DeltaEquilibrium,
"Movement": Movement,
"SettlementType": SettlementType,
"ConfidenceScore": ConfidenceScore,
"ImputedVariables": ImputedVariables,
"TopRiskDrivers": TopRiskDrivers,
"TopRepairDrivers": TopRepairDrivers,
"LedgerTimestamp": current_timestamp
}
TOP_DRIVER_ANALYSIS:
PURPOSE:
- "Explain which variables moved the score most."
- "Keep AI from giving vague dashboard output."
RISK_DRIVER_SCORE:
CODE: |
risk_driver_contribution(variable) =
variable_weight
* variable_pressure_value
* evidence_weight
* delta_magnitude
REPAIR_DRIVER_SCORE:
CODE: |
repair_driver_contribution(variable) =
variable_weight
* variable_good_value
* evidence_weight
* positive_delta_magnitude
OUTPUT_RULE:
CODE: |
TopRiskDrivers = top_5(risk_driver_contributions)
TopRepairDrivers = top_5(repair_driver_contributions)
ALERT_SYSTEM:
PURPOSE:
- "Generate early warning labels."
ALERT_RULES:
WATCH:
CODE: |
if VolatilityScore >= 50 or PaperRealityGap >= 25 or DeltaSocietyScore <= -5:
Alert = "WATCH"
WARNING:
CODE: |
if VolatilityScore >= 65 or PaperRealityGap >= 40 or EquilibriumScore < 45 or CombinedShock >= 60:
Alert = "WARNING"
CRITICAL:
CODE: |
if VolatilityScore >= 80 or EquilibriumScore < 30 or SocietyIndicatorScore < 40 or FalseEquilibriumRisk >= 70:
Alert = "CRITICAL"
PLANETOS_WARNING:
CODE: |
if PlanetFloorBurn >= 60 or PlanetSocialRisk >= 60:
PlanetOSAlert = "PLANET_FLOOR_WARNING"
WAR_WARNING:
CODE: |
if WarVolatilityPressure >= 60:
WarAlert = "WAR_SHOCK_WARNING"
QUIET_DECLINE_WARNING:
CODE: |
if VolatilityScore < 40 and DeltaSocietyScore <= -8 and PaperRealityGap >= 30:
Alert = "QUIET_DECLINE_WARNING"
FALSE_CALM_WARNING:
CODE: |
if visible_calm >= 70 and FalseEquilibriumRisk >= 60:
Alert = "FALSE_CALM_WARNING"
OUTPUT_TEMPLATE_CODE_ONLY:
JSON_OUTPUT_SCHEMA:
SocietyIndicatorScore: "number 0-100 high_good"
SocietyZone: "string"
VolatilityScore: "number 0-100 high_bad"
VolatilityZone: "string"
HumanFeelIndex: "number 0-100 high_bad"
HumanFeelZone: "string"
EquilibriumScore: "number 0-100 high_good"
EquilibriumZone: "string"
FalseEquilibriumRisk: "number 0-100 high_bad"
PaperRealityGap: "number 0-100 high_bad"
GapType: "string"
CombinedShock: "number 0-100 high_bad"
ShockZone: "string"
PlanetOSScore: "number 0-100 high_good"
PlanetFloorBurn: "number 0-100 high_bad"
PlanetSocialRisk: "number 0-100 high_bad"
WarVolatilityPressure: "number 0-100 high_bad"
CultureVolatility: "number 0-100 high_bad"
DeltaSocietyScore: "number"
DeltaVolatility: "number"
DeltaEquilibrium: "number"
Movement: "string"
SettlementType: "string"
Alert: "string"
PlanetOSAlert: "string"
WarAlert: "string"
ConfidenceScore: "number 0-100"
TopRiskDrivers: "array"
TopRepairDrivers: "array"
ImputedVariables: "array"
SourceQualitySummary: "object"
LedgerTimestamp: "datetime"
SAMPLE_EMPTY_OUTPUT:
CODE: |
{
"SocietyIndicatorScore": null,
"SocietyZone": null,
"VolatilityScore": null,
"VolatilityZone": null,
"HumanFeelIndex": null,
"HumanFeelZone": null,
"EquilibriumScore": null,
"EquilibriumZone": null,
"FalseEquilibriumRisk": null,
"PaperRealityGap": null,
"GapType": null,
"CombinedShock": null,
"ShockZone": null,
"PlanetOSScore": null,
"PlanetFloorBurn": null,
"PlanetSocialRisk": null,
"WarVolatilityPressure": null,
"CultureVolatility": null,
"DeltaSocietyScore": null,
"DeltaVolatility": null,
"DeltaEquilibrium": null,
"Movement": null,
"SettlementType": null,
"Alert": null,
"PlanetOSAlert": null,
"WarAlert": null,
"ConfidenceScore": null,
"TopRiskDrivers": [],
"TopRepairDrivers": [],
"ImputedVariables": [],
"SourceQualitySummary": {},
"LedgerTimestamp": null
}
MASTER_FORMULA_SUMMARY:
SOCIETY_INDICATOR_SCORE:
CODE: |
SocietyIndicatorScore =
BaseSocietyScore
- VolatilityPenalty
- ShockPenalty
- PaperGapPenalty
- FalseEquilibriumPenalty
+ ResilienceBonus
- PlanetPenalty
BASE_SOCIETY_SCORE:
CODE: |
BaseSocietyScore =
0.14*TrustScore
+ 0.12*GovernanceScore
+ 0.10*CultureScore
+ 0.13*HumanScore
+ 0.12*EconomyScore
+ 0.10*EducationScore
+ 0.10*SecurityScore
+ 0.08*PlanetOSScore
+ 0.05*InformationScore
+ 0.06*RepairScore
VOLATILITY_SCORE:
CODE: |
VolatilityScore =
0.12*ChangeSpeed
+ 0.15*PressureLoad
+ 0.12*UncertaintyLoad
+ 0.12*(100-TrustScore)
+ 0.12*EmotionalHeat
+ 0.10*(100-adaptation_capacity)
+ 0.10*(100-future_confidence)
+ 0.07*PlanetShockPressure
+ 0.06*WarShockPressure
+ 0.04*InformationShockPressure
HUMAN_FEEL_INDEX:
CODE: |
HumanFeelIndex =
0.15*stress_level
+ 0.12*anxiety
+ 0.15*(100-future_confidence)
+ 0.12*cost_pressure
+ 0.10*safety_fear
+ 0.12*(100-TrustScore)
+ 0.10*(100-adaptation_capacity)
+ 0.06*loneliness
+ 0.04*media_temperature
+ 0.04*CombinedShock
EQUILIBRIUM_SCORE:
CODE: |
EquilibriumScore =
0.45*StabilityBuffer
+ 0.35*FutureSettlement
+ 0.20*RepairScore
- 0.35*PressureBurden
PAPER_REALITY_GAP:
CODE: |
PaperRealityGap = abs(PaperScore - LivedScore)
ACTIVE_SHOCK:
CODE: |
EventSeverity =
0.15*affected_population_pct
+ 0.10*geographic_spread
+ 0.15*casualty_severity
+ 0.15*displacement_severity
+ 0.15*infrastructure_damage
+ 0.10*economic_damage
+ 0.10*symbolic_shock
+ 0.05*media_amplification
+ 0.05*trust_relevance
ResponseBuffer =
0.25*recovery_visibility
+ 0.30*institutional_response_quality
+ 0.25*crisis_response_capacity
+ 0.20*community_support
HumanFeelShock = EventSeverity * (1 - ResponseBuffer/150)
ActiveShock = HumanFeelShock * (0.5 ** (days_since_event / half_life_days))
COMBINED_SHOCK:
CODE: |
CombinedShock = 100 * (1 - product_over_events(1 - ActiveShock_i/100))
AI_IMPLEMENTATION_RULES:
RULE_01:
NAME: "Do not calculate from vibes only."
CODE: |
if no_data and no_baseline:
return "INSUFFICIENT_DATA_FOR_SCORE"
RULE_02:
NAME: "Always separate society score and volatility score."
CODE: |
SocietyIndicatorScore measures health/function.
VolatilityScore measures felt instability.
High society score can coexist with temporary high volatility.
Low volatility can coexist with quiet decline.
RULE_03:
NAME: "Always include human feel."
CODE: |
HumanFeelIndex must be calculated for every run.
Natural disasters, quick wars, earth changes, and cost shocks must pass through HumanFeelIndex.
RULE_04:
NAME: "Always include PlanetOS."
CODE: |
PlanetOSScore cannot be omitted.
Earth is the lower structural floor.
Environmental degradation must affect future-floor and volatility calculations.
RULE_05:
NAME: "Always include shock decay."
CODE: |
Sudden shocks decay through time only if repair and adaptation occur.
Slow earth changes decay slowly or accumulate.
RULE_06:
NAME: "Always detect false calm."
CODE: |
Low visible noise does not equal equilibrium.
Check FalseEquilibriumRisk and PaperRealityGap.
RULE_07:
NAME: "Always compare to Zero Pin."
CODE: |
delta = current - baseline
without baseline, label output as cross-sectional only.
RULE_08:
NAME: "Always output confidence."
CODE: |
confidence must reflect missing data, source quality, recency, and method quality.
RULE_09:
NAME: "Do not overclaim prediction."
CODE: |
output is early warning and diagnostic.
not deterministic forecast.
RULE_10:
NAME: "Score movement across Ztime."
CODE: |
daily = shock and heat
monthly = adaptation and repair
annual = trust and institutions
5_year = route openness and culture
10_year = equilibrium trajectory
25_year = civilisation floor inheritance

“`yaml id=”planet-score-sample-run-v1″
PLANET_SCORE_SAMPLE_RUN:
PUBLIC_ID: “PLANETOS.SOCIETY.INDICATOR.SAMPLE.RUN.2026.v1.0”
MACHINE_ID: “EKSG.PLANETOS.SOCIETY.SCORE.SAMPLE.RUN.v1.0”
LATTICE_CODE: “PLANETOS/SOCIETYOS/Z0-Z6/P0-P4/VOLATILITY/EQUILIBRIUM/HUMAN.FEEL.SENSOR/SAMPLE.v1.0”
RUN_TYPE: “SAMPLE_ONLY”
DATA_STATUS: “ILLUSTRATIVE_ASSUMED_VALUES_NOT_LIVE_MEASUREMENT”
DATE_CONTEXT: “2026-05-08”
SCALE: “GLOBAL_PLANET_SCORE”
UNIT: “Earth / Human Civilisation / PlanetOS”
CONFIDENCE_MODE: “exploratory_sample”

SAMPLE_ASSUMPTION:
statement: “This is a sample run using plausible placeholder values to demonstrate the full scoring engine.”
not_actual_claim: true
requires_live_data_for_real_score: true

ZERO_PIN:
baseline_label: “GLOBAL_BASELINE_PREVIOUS_STABLE_REFERENCE”
baseline_period: “illustrative 2015-2019 average”
baseline_society_indicator_score: 66
baseline_volatility_score: 42
baseline_equilibrium_score: 61
baseline_trust_score: 55
baseline_future_confidence: 58
baseline_planetos_score: 60

SAMPLE_INPUTS_0_TO_100:
TRUST:
institutional_trust: 48
interpersonal_trust: 52
fairness_belief: 44
legitimacy_confidence: 47
trust_in_future: 45

GOVERNANCE:
rule_of_law: 55
corruption_control: 48
policy_clarity: 46
state_capacity: 58
responsiveness: 49
CULTURE:
norm_coherence: 52
belonging: 50
shared_reality: 43
cultural_shear: 58
identity_fragmentation: 55
HUMAN:
life_satisfaction: 51
mental_health_security: 45
stress_level: 62
loneliness: 54
future_confidence: 44
adaptation_capacity: 50
ECONOMY:
cost_pressure: 68
housing_pressure: 72
food_energy_pressure: 61
employment_security: 53
income_security: 47
inequality_pressure: 66
EDUCATION:
education_access: 67
education_pressure: 63
youth_route_openness: 48
skills_adaptability: 56
intergenerational_mobility_belief: 43
SECURITY:
personal_safety: 61
crime_pressure: 42
conflict_pressure: 59
war_proximity: 56
displacement_pressure: 52
PLANETOS:
disaster_exposure: 64
disaster_recent_impact: 57
climate_stress: 69
heat_stress: 68
water_food_stress: 62
biodiversity_ecosystem_loss: 72
planet_buffer_capacity: 42
MEDIA_INFORMATION:
media_temperature: 70
misinformation_pressure: 64
narrative_polarisation: 68
source_trust: 44
information_clarity: 43
REPAIR:
repair_capacity: 52
crisis_response_capacity: 55
social_safety_net: 50
institutional_learning: 47
community_support: 54
PAPER_SOCIETY:
official_rule_quality: 58
official_performance_claim: 61
lived_experience_score: 48
citizen_confidence_score: 45
EXTRA_RUNTIME_INPUTS:
policy_change_rate: 58
cost_change_rate: 67
technology_change_rate: 74
migration_change_rate: 55
climate_change_rate: 70
security_change_rate: 62
policy_uncertainty: 61
job_uncertainty: 60
economic_uncertainty: 66
security_uncertainty: 64
climate_uncertainty: 71
education_route_uncertainty: 58
anger: 62
fear: 60
anxiety: 67
resentment: 61
hopelessness: 54
safety_fear: 59
visible_calm: 47
complaint_suppression_risk: 52
participation_decline: 48
hidden_resentment: 61
norm_conflict: 57
generational_gap: 63
language_frame_conflict: 55
migration_integration_stress: 54
symbolic_conflict: 60
media_amplification_of_war: 68
supply_chain_disruption: 55
energy_security_risk: 61
national_security_fear: 63
information_fog: 66
escalation_risk: 59
leadership_trust: 46

SAMPLE_EVENTS:
– event_id: “SAMPLE.GLOBAL.CLIMATE.DISASTER.CLUSTER”
event_type: “natural_disaster”
date: “2026-02-15”
days_since_event: 82
half_life_days: 90
affected_population_pct: 42
geographic_spread: 68
casualty_severity: 38
displacement_severity: 46
infrastructure_damage: 51
economic_damage: 56
symbolic_shock: 59
media_amplification: 62
trust_relevance: 54
recovery_visibility: 48
institutional_response_quality: 50
crisis_response_capacity: 55
community_support: 54

- event_id: "SAMPLE.GLOBAL.QUICK.WAR.SECURITY.SHOCK"
event_type: "quick_war"
date: "2026-03-20"
days_since_event: 49
half_life_days: 180
affected_population_pct: 36
geographic_spread: 57
casualty_severity: 49
displacement_severity: 58
infrastructure_damage: 44
economic_damage: 61
symbolic_shock: 70
media_amplification: 75
trust_relevance: 66
recovery_visibility: 41
institutional_response_quality: 46
crisis_response_capacity: 52
community_support: 49
- event_id: "SAMPLE.GLOBAL.EARTH.CHANGE.CHRONIC"
event_type: "earth_change"
date: "2025-05-08"
days_since_event: 365
half_life_days: 720
affected_population_pct: 64
geographic_spread: 80
casualty_severity: 25
displacement_severity: 42
infrastructure_damage: 39
economic_damage: 62
symbolic_shock: 72
media_amplification: 58
trust_relevance: 61
recovery_visibility: 35
institutional_response_quality: 42
crisis_response_capacity: 48
community_support: 45

yaml id=”domain-calculation-sample”
DOMAIN_SCORE_CALCULATION:
TrustScore:
formula: >
0.25institutional_trust + 0.20interpersonal_trust
+ 0.25fairness_belief + 0.20legitimacy_confidence
+ 0.10trust_in_future calculation: “0.2548 + 0.2052 + 0.2544 + 0.2047 + 0.1045″
result: 47.30

GovernanceScore:
formula: >
0.25rule_of_law + 0.20corruption_control
+ 0.20policy_clarity + 0.20state_capacity
+ 0.15responsiveness calculation: “0.2555 + 0.2048 + 0.2046 + 0.2058 + 0.1549″
result: 51.50

CultureScore:
formula: >
0.25norm_coherence + 0.25belonging
+ 0.25shared_reality + 0.15(100-cultural_shear)
+ 0.10(100-identity_fragmentation) calculation: “0.2552 + 0.2550 + 0.2543 + 0.1542 + 0.1045″
result: 47.05

HumanScore:
formula: >
0.20life_satisfaction + 0.20mental_health_security
+ 0.20(100-stress_level) + 0.10(100-loneliness)
+ 0.20future_confidence + 0.10adaptation_capacity
calculation: “0.2051 + 0.2045 + 0.2038 + 0.1046 + 0.2044 + 0.1050″
result: 45.20

EconomyScore:
formula: >
0.20(100-cost_pressure) + 0.20(100-housing_pressure)
+ 0.15(100-food_energy_pressure) + 0.20employment_security
+ 0.15income_security + 0.10(100-inequality_pressure)
calculation: “0.2032 + 0.2028 + 0.1539 + 0.2053 + 0.1547 + 0.1034″
result: 38.90

EducationScore:
formula: >
0.25education_access + 0.20(100-education_pressure)
+ 0.25youth_route_openness + 0.20skills_adaptability
+ 0.10intergenerational_mobility_belief calculation: “0.2567 + 0.2037 + 0.2548 + 0.2056 + 0.1043″
result: 51.65

SecurityScore:
formula: >
0.30personal_safety + 0.20(100-crime_pressure)
+ 0.20(100-conflict_pressure) + 0.20(100-war_proximity)
+ 0.10(100-displacement_pressure) calculation: “0.3061 + 0.2058 + 0.2041 + 0.2044 + 0.1048″
result: 51.70

PlanetOSScore:
formula: >
0.15(100-disaster_exposure) + 0.15(100-disaster_recent_impact)
+ 0.15(100-climate_stress) + 0.10(100-heat_stress)
+ 0.20(100-water_food_stress) + 0.10(100-biodiversity_ecosystem_loss)
+ 0.15planet_buffer_capacity calculation: “0.1536 + 0.1543 + 0.1531 + 0.1032 + 0.2038 + 0.1028 + 0.1542″
result: 36.40

InformationScore:
formula: >
0.20(100-media_temperature) + 0.25(100-misinformation_pressure)
+ 0.20(100-narrative_polarisation) + 0.20source_trust
+ 0.15information_clarity calculation: “0.2030 + 0.2536 + 0.2032 + 0.2044 + 0.1543″
result: 36.65

RepairScore:
formula: >
0.25repair_capacity + 0.25crisis_response_capacity
+ 0.20social_safety_net + 0.15institutional_learning
+ 0.15community_support calculation: “0.2552 + 0.2555 + 0.2050 + 0.1547 + 0.1554″
result: 51.90

yaml id=”event-shock-calculation-sample”
EVENT_SHOCK_CALCULATION:
EVENT_01_NATURAL_DISASTER_CLUSTER:
EventSeverity:
formula: >
0.15affected_population_pct + 0.10geographic_spread
+ 0.15casualty_severity + 0.15displacement_severity
+ 0.15infrastructure_damage + 0.10economic_damage
+ 0.10symbolic_shock + 0.05media_amplification
+ 0.05trust_relevance calculation: “0.1542 + 0.1068 + 0.1538 + 0.1546 + 0.1551 + 0.1056 + 0.1059 + 0.0562 + 0.0554″
result: 50.75

ResponseBuffer:
formula: >
0.25*recovery_visibility
+ 0.30*institutional_response_quality
+ 0.25*crisis_response_capacity
+ 0.20*community_support
calculation: "0.25*48 + 0.30*50 + 0.25*55 + 0.20*54"
result: 51.55
HumanFeelShock:
formula: "EventSeverity * (1 - ResponseBuffer/150)"
calculation: "50.75 * (1 - 51.55/150)"
result: 33.30
ActiveShock:
formula: "HumanFeelShock * (0.5 ** (days_since_event / half_life_days))"
calculation: "33.30 * (0.5 ** (82/90))"
result: 17.72

EVENT_02_QUICK_WAR_SECURITY_SHOCK:
EventSeverity:
calculation: “0.1536 + 0.1057 + 0.1549 + 0.1558 + 0.1544 + 0.1061 + 0.1070 + 0.0575 + 0.05*66″
result: 53.90

ResponseBuffer:
calculation: "0.25*41 + 0.30*46 + 0.25*52 + 0.20*49"
result: 46.85
HumanFeelShock:
calculation: "53.90 * (1 - 46.85/150)"
result: 37.06
ActiveShock:
calculation: "37.06 * (0.5 ** (49/180))"
result: 30.67

EVENT_03_CHRONIC_EARTH_CHANGE:
EventSeverity:
calculation: “0.1564 + 0.1080 + 0.1525 + 0.1542 + 0.1539 + 0.1062 + 0.1072 + 0.0558 + 0.05*61″
result: 52.75

ResponseBuffer:
calculation: "0.25*35 + 0.30*42 + 0.25*48 + 0.20*45"
result: 42.35
HumanFeelShock:
calculation: "52.75 * (1 - 42.35/150)"
result: 37.86
ActiveShock:
calculation: "37.86 * (0.5 ** (365/720))"
result: 26.65

COMBINED_SHOCK:
formula: “100 * (1 – product(1 – ActiveShock_i/100))”
calculation: “100 * (1 – (1-0.1772)(1-0.3067)(1-0.2665))”
result: 58.13

ShockZone:
rule: “CombinedShock 41-60 = HIGH_SHOCK”
result: “HIGH_SHOCK”

yaml id=”volatility-calculation-sample”
VOLATILITY_SCORE_CALCULATION:
ChangeSpeed:
formula: “average(policy_change_rate, cost_change_rate, technology_change_rate, migration_change_rate, climate_change_rate, security_change_rate)”
calculation: “average(58,67,74,55,70,62)”
result: 64.33

PressureLoad:
formula: “average(cost_pressure, housing_pressure, food_energy_pressure, education_pressure, stress_level)”
calculation: “average(68,72,61,63,62)”
result: 65.20

UncertaintyLoad:
formula: “average(policy_uncertainty, job_uncertainty, economic_uncertainty, security_uncertainty, climate_uncertainty, education_route_uncertainty)”
calculation: “average(61,60,66,64,71,58)”
result: 63.33

TrustStress:
formula: “100 – TrustScore”
calculation: “100 – 47.30”
result: 52.70

EmotionalHeat:
formula: “average(anger, fear, anxiety, resentment, hopelessness, media_temperature)”
calculation: “average(62,60,67,61,54,70)”
result: 62.33

AdaptationDifficulty:
formula: “100 – adaptation_capacity”
calculation: “100 – 50”
result: 50.00

FutureFear:
formula: “100 – future_confidence”
calculation: “100 – 44”
result: 56.00

PlanetShockPressure:
formula: >
0.20disaster_recent_impact + 0.15disaster_exposure
+ 0.15climate_stress + 0.15heat_stress
+ 0.20water_food_stress + 0.15(100-planet_buffer_capacity)
calculation: “0.2057 + 0.1564 + 0.1569 + 0.1568 + 0.2062 + 0.1558″
result: 62.65

WarShockPressure:
formula: >
0.25war_proximity + 0.25conflict_pressure
+ 0.20displacement_pressure + 0.15safety_fear
+ 0.15media_amplification_of_war calculation: “0.2556 + 0.2559 + 0.2052 + 0.1559 + 0.1568″
result: 58.20

InformationShockPressure:
formula: >
0.30media_temperature + 0.30misinformation_pressure
+ 0.25narrative_polarisation + 0.15(100-information_clarity)
calculation: “0.3070 + 0.3064 + 0.2568 + 0.1557″
result: 65.75

BaseVolatilityScore:
formula: >
0.12ChangeSpeed + 0.15PressureLoad
+ 0.12UncertaintyLoad + 0.12TrustStress
+ 0.12EmotionalHeat + 0.10AdaptationDifficulty
+ 0.10FutureFear + 0.07PlanetShockPressure
+ 0.06WarShockPressure + 0.04InformationShockPressure
calculation: >
0.1264.33 + 0.1565.20
+ 0.1263.33 + 0.1252.70
+ 0.1262.33 + 0.1050.00
+ 0.1056.00 + 0.0762.65
+ 0.0658.20 + 0.0465.75
result: 60.00

HumanFeelIndex:
formula: >
0.15stress_level + 0.12anxiety
+ 0.15(100-future_confidence) + 0.12cost_pressure
+ 0.10safety_fear + 0.12(100-TrustScore)
+ 0.10(100-adaptation_capacity) + 0.06loneliness
+ 0.04media_temperature + 0.04CombinedShock
calculation: >
0.1562 + 0.1267
+ 0.1556 + 0.1268
+ 0.1059 + 0.1252.70
+ 0.1050 + 0.0654
+ 0.0470 + 0.0458.13
result: 59.44

VolatilityScore_Adjusted:
formula: “0.80BaseVolatilityScore + 0.20HumanFeelIndex”
calculation: “0.8060.00 + 0.2059.44″
result: 59.89

VolatilityZone:
rule: “41-60 = UNSETTLED”
result: “UNSETTLED_HIGH_EDGE”

yaml id=”culture-war-planet-modules-sample”
SPECIAL_MODULES:
CultureVolatility:
formula: >
0.20cultural_shear + 0.15identity_fragmentation
+ 0.15norm_conflict + 0.10generational_gap
+ 0.10language_frame_conflict + 0.10migration_integration_stress
+ 0.10symbolic_conflict + 0.10(100-belonging)
calculation: “0.2058 + 0.1555 + 0.1557 + 0.1063 + 0.1055 + 0.1054 + 0.1060 + 0.1050″
result: 56.60

PlanetHumanTransmission:
formula: >
0.20heat_stress + 0.20water_food_stress
+ 0.15disaster_recent_impact + 0.15disaster_exposure
+ 0.10climate_stress + 0.10biodiversity_ecosystem_loss
+ 0.10(100-planet_buffer_capacity) calculation: “0.2068 + 0.2062 + 0.1557 + 0.1564 + 0.1069 + 0.1072 + 0.1058″
result: 64.05

PlanetSocialRisk:
formula: >
0.35PlanetHumanTransmission + 0.25(100-RepairScore)
+ 0.20(100-GovernanceScore) + 0.20(100-EconomyScore)
calculation: “0.3564.05 + 0.2548.10 + 0.2048.50 + 0.2061.10″
result: 56.34

PlanetFloorBurn:
formula: >
0.25climate_stress + 0.20water_food_stress
+ 0.15heat_stress + 0.15biodiversity_ecosystem_loss
+ 0.15disaster_exposure + 0.10(100-planet_buffer_capacity)
calculation: “0.2569 + 0.2062 + 0.1568 + 0.1572 + 0.1564 + 0.1058″
result: 66.05

WarVolatilityPressure:
formula: >
0.15war_proximity + 0.15conflict_pressure
+ 0.10casualty_severity + 0.10displacement_pressure
+ 0.10supply_chain_disruption + 0.10energy_security_risk
+ 0.10national_security_fear + 0.10information_fog
+ 0.05escalation_risk + 0.05(100-leadership_trust)
calculation: “0.1556 + 0.1559 + 0.1049 + 0.1052 + 0.1055 + 0.1061 + 0.1063 + 0.1066 + 0.0559 + 0.0554″
result: 57.50

WarHumanFeel:
formula: >
0.35national_security_fear + 0.20(100-future_confidence)
+ 0.15information_fog + 0.15supply_chain_disruption
+ 0.15(100-leadership_trust) calculation: “0.3563 + 0.2056 + 0.1566 + 0.1555 + 0.1554″
result: 59.50

yaml id=”paper-equilibrium-calculation-sample”
PAPER_REALITY_GAP_CALCULATION:
PaperScore:
formula: >
0.35official_rule_quality + 0.35official_performance_claim
+ 0.15GovernanceScore + 0.15SecurityScore
calculation: “0.3558 + 0.3561 + 0.1551.50 + 0.1551.70″
result: 57.13

LivedScore:
formula: >
0.25lived_experience_score + 0.20HumanScore
+ 0.20TrustScore + 0.15EconomyScore
+ 0.10CultureScore + 0.10future_confidence
calculation: “0.2548 + 0.2045.20 + 0.2047.30 + 0.1538.90 + 0.1047.05 + 0.1044″
result: 45.44

PaperRealityGap:
formula: “abs(PaperScore – LivedScore)”
calculation: “abs(57.13 – 45.44)”
result: 11.69

GapType:
rule: “PaperScore > LivedScore”
result: “PAPER_OVERSTATES_REALITY”

GapZone:
rule: “11-25 = WATCH_GAP”
result: “WATCH_GAP”

EQUILIBRIUM_CALCULATION:
StabilityBuffer:
formula: >
0.25TrustScore + 0.20GovernanceScore
+ 0.15SecurityScore + 0.15RepairScore
+ 0.15InformationScore + 0.10CultureScore
calculation: “0.2547.30 + 0.2051.50 + 0.1551.70 + 0.1551.90 + 0.1536.65 + 0.1047.05″
result: 47.88

PressureBurden:
formula: >
0.25VolatilityScore + 0.20CombinedShock
+ 0.15cost_pressure + 0.10housing_pressure
+ 0.10education_pressure + 0.10conflict_pressure
+ 0.10PlanetShockPressure calculation: “0.2559.89 + 0.2058.13 + 0.1568 + 0.1072 + 0.1063 + 0.1059 + 0.1062.65″
result: 61.67

FutureSettlement:
formula: >
0.30future_confidence + 0.20youth_route_openness
+ 0.20intergenerational_mobility_belief + 0.15skills_adaptability
+ 0.15planet_buffer_capacity calculation: “0.3044 + 0.2048 + 0.2043 + 0.1556 + 0.1542″
result: 46.10

EquilibriumScore:
formula: >
0.45StabilityBuffer + 0.35FutureSettlement
+ 0.20RepairScore – 0.35PressureBurden
calculation: “0.4547.88 + 0.3546.10 + 0.2051.90 – 0.3561.67″
result_raw: 26.46
result_clamped: 26.46

FalseEquilibriumRisk:
formula: >
0.20visible_calm + 0.20complaint_suppression_risk
+ 0.20participation_decline + 0.20hidden_resentment
+ 0.20PaperRealityGap – 0.30TrustScore
calculation: “0.2047 + 0.2052 + 0.2048 + 0.2061 + 0.2011.69 – 0.3047.30″
result_raw: 19.75
result_clamped: 19.75

EquilibriumZone:
rule: “EquilibriumScore < 30 = EQUILIBRIUM_FAILURE”
result: “EQUILIBRIUM_FAILURE_SAMPLE”

yaml id=”final-planet-score-calculation-sample”
FINAL_PLANET_SCORE_CALCULATION:
BaseSocietyScore:
formula: >
0.14TrustScore + 0.12GovernanceScore
+ 0.10CultureScore + 0.13HumanScore
+ 0.12EconomyScore + 0.10EducationScore
+ 0.10SecurityScore + 0.08PlanetOSScore
+ 0.05InformationScore + 0.06RepairScore
calculation: >
0.1447.30 + 0.1251.50
+ 0.1047.05 + 0.1345.20
+ 0.1238.90 + 0.1051.65
+ 0.1051.70 + 0.0836.40
+ 0.0536.65 + 0.0651.90
result: 46.33

Penalties:
VolatilityPenalty:
formula: “0.20 * VolatilityScore”
calculation: “0.20 * 59.89”
result: 11.98

ShockPenalty:
formula: "0.15 * CombinedShock"
calculation: "0.15 * 58.13"
result: 8.72
PaperGapPenalty:
formula: "0.10 * PaperRealityGap"
calculation: "0.10 * 11.69"
result: 1.17
FalseEquilibriumPenalty:
formula: "0.10 * FalseEquilibriumRisk"
calculation: "0.10 * 19.75"
result: 1.98
TotalPenalty:
formula: "VolatilityPenalty + ShockPenalty + PaperGapPenalty + FalseEquilibriumPenalty"
calculation: "11.98 + 8.72 + 1.17 + 1.98"
result_raw: 23.85
result_clamped: 23.85

ResilienceBonus:
formula: >
0.08RepairScore + 0.05TrustScore
+ 0.04GovernanceScore + 0.03community_support
calculation: “0.0851.90 + 0.0547.30 + 0.0451.50 + 0.0354″
result_raw: 10.20
volatility_adjustment:
rule: “VolatilityScore <= 75, no 50% penalty”
adjusted_result: 10.20
paper_gap_adjustment:
rule: “PaperRealityGap <= 50, no 60% penalty”
adjusted_result: 10.20
result_clamped: 10.20

PlanetPenalty:
rule: “PlanetFloorBurn 61-80 = 9 point penalty”
PlanetFloorBurn: 66.05
result: 9.00

SocietyIndicatorScore:
formula: “BaseSocietyScore – TotalPenalty + ResilienceBonus – PlanetPenalty”
calculation: “46.33 – 23.85 + 10.20 – 9.00”
result_raw: 23.68
result_clamped: 23.68

SocietyZone:
rule: “Score < 25 = SYSTEM_FAILURE_RISK”
result: “SYSTEM_FAILURE_RISK_SAMPLE”

DeltaSocietyScore:
formula: “CurrentSocietyIndicatorScore – BaselineSocietyIndicatorScore”
calculation: “23.68 – 66”
result: -42.32

DeltaVolatility:
formula: “CurrentVolatilityScore – BaselineVolatilityScore”
calculation: “59.89 – 42”
result: 17.89

DeltaEquilibrium:
formula: “CurrentEquilibriumScore – BaselineEquilibriumScore”
calculation: “26.46 – 61”
result: -34.54

DeltaTrust:
formula: “CurrentTrustScore – BaselineTrustScore”
calculation: “47.30 – 55”
result: -7.70

DeltaFutureConfidence:
formula: “CurrentFutureConfidence – BaselineFutureConfidence”
calculation: “44 – 58”
result: -14.00

DeltaPlanetOS:
formula: “CurrentPlanetOSScore – BaselinePlanetOSScore”
calculation: “36.40 – 60”
result: -23.60

Movement:
rule: “DeltaSocietyScore <= -10 and DeltaEquilibrium <= -5”
result: “MOVED_DOWN_SAMPLE”

EquilibriumReturned:
rule: “VolatilityScore < 40 and EquilibriumScore >= 60 and FalseEquilibriumRisk < 40”
calculation: “59.89 < 40 = false”
result: false

SettlementType:
rule: “EquilibriumReturned == false”
result: “NOT_SETTLED_SAMPLE”

json id=”final-output-ledger-sample”
{
“RunType”: “SAMPLE_ONLY_NOT_LIVE_MEASUREMENT”,
“DateContext”: “2026-05-08”,
“Scale”: “GLOBAL_PLANET_SCORE”,
“SocietyIndicatorScore”: 23.68,
“SocietyZone”: “SYSTEM_FAILURE_RISK_SAMPLE”,
“VolatilityScore”: 59.89,
“VolatilityZone”: “UNSETTLED_HIGH_EDGE”,
“HumanFeelIndex”: 59.44,
“HumanFeelZone”: “STRAINED_HIGH_EDGE”,
“EquilibriumScore”: 26.46,
“EquilibriumZone”: “EQUILIBRIUM_FAILURE_SAMPLE”,
“FalseEquilibriumRisk”: 19.75,
“PaperRealityGap”: 11.69,
“GapType”: “PAPER_OVERSTATES_REALITY”,
“GapZone”: “WATCH_GAP”,
“CombinedShock”: 58.13,
“ShockZone”: “HIGH_SHOCK”,
“PlanetOSScore”: 36.4,
“PlanetFloorBurn”: 66.05,
“PlanetSocialRisk”: 56.34,
“WarVolatilityPressure”: 57.5,
“WarHumanFeel”: 59.5,
“CultureVolatility”: 56.6,
“BaseSocietyScore”: 46.33,
“TotalPenalty”: 23.85,
“ResilienceBonus”: 10.2,
“PlanetPenalty”: 9,
“DeltaSocietyScore”: -42.32,
“DeltaVolatility”: 17.89,
“DeltaEquilibrium”: -34.54,
“DeltaTrust”: -7.7,
“DeltaFutureConfidence”: -14,
“DeltaPlanetOS”: -23.6,
“Movement”: “MOVED_DOWN_SAMPLE”,
“EquilibriumReturned”: false,
“SettlementType”: “NOT_SETTLED_SAMPLE”,
“Alert”: “CRITICAL_SAMPLE”,
“PlanetOSAlert”: “PLANET_FLOOR_WARNING_SAMPLE”,
“WarAlert”: “WATCH_WAR_SHOCK_SAMPLE”,
“ConfidenceScore”: 38,
“ConfidenceReason”: “Sample run uses assumed placeholder values rather than live ExpertSource data.”,
“TopRiskDrivers”: [
{
“driver”: “PlanetFloorBurn”,
“value”: 66.05,
“effect”: “Large future-floor penalty and PlanetOS social risk.”
},
{
“driver”: “VolatilityScore”,
“value”: 59.89,
“effect”: “High unsettled pressure near volatile threshold.”
},
{
“driver”: “CombinedShock”,
“value”: 58.13,
“effect”: “Multiple active shocks compound through disaster, war, and chronic Earth change.”
},
{
“driver”: “EconomyScore”,
“value”: 38.9,
“effect”: “Cost, housing, food-energy, and inequality pressure drag lived society down.”
},
{
“driver”: “InformationScore”,
“value”: 36.65,
“effect”: “Media heat, misinformation, polarisation, and low clarity amplify volatility.”
}
],
“TopRepairDrivers”: [
{
“driver”: “RepairScore”,
“value”: 51.9,
“effect”: “Moderate repair capacity prevents even lower score.”
},
{
“driver”: “GovernanceScore”,
“value”: 51.5,
“effect”: “State capacity and rule structures provide partial stabilisation.”
},
{
“driver”: “SecurityScore”,
“value”: 51.7,
“effect”: “Personal safety still offsets conflict pressure.”
},
{
“driver”: “EducationScore”,
“value”: 51.65,
“effect”: “Education access and skills adaptability retain some future route capacity.”
},
{
“driver”: “CommunitySupport”,
“value”: 54,
“effect”: “Human local buffering reduces full shock transmission.”
}
],
“ImputedVariables”: [],
“SourceQualitySummary”: {
“SourceMode”: “No live sources used”,
“Tier10Sources”: 0,
“Tier8Sources”: 0,
“Tier6Sources”: 0,
“Tier4Sources”: 0,
“EvidenceStatus”: “Placeholder sample only”
},
“LedgerTimestamp”: “2026-05-08T00:00:00+08:00”
}

yaml id=”sample-interpretation-code-only”
SAMPLE_RUNTIME_READING:
SCORE_MEANING:
SocietyIndicatorScore_23_68:
label: “SYSTEM_FAILURE_RISK_SAMPLE”
meaning: “In this illustrative input set, the global planet society system is calculated as severely stressed.”
caution: “Not a live factual score.”

VolatilityScore_59_89:
label: "UNSETTLED_HIGH_EDGE"
meaning: "Human society is not yet fully volatile in this sample, but it is close to the volatile threshold."
HumanFeelIndex_59_44:
label: "STRAINED_HIGH_EDGE"
meaning: "People feel pressure from cost, future fear, safety anxiety, trust stress, and combined shocks."
EquilibriumScore_26_46:
label: "EQUILIBRIUM_FAILURE_SAMPLE"
meaning: "In this sample, society has not settled back into a healthy equilibrium."
PlanetFloorBurn_66_05:
label: "PLANET_FLOOR_WARNING_SAMPLE"
meaning: "Earth-system pressure is burning future floor space in the sample model."

MAIN_CAUSAL_CHAIN:
CODE: |
PlanetOS pressure
+ cost pressure
+ information heat
+ conflict/war pressure
+ weak future confidence
-> high human feel pressure
-> high volatility
-> weak equilibrium
-> low Society Indicator Score

EQUILIBRIUM_STATUS:
CODE: |
if EquilibriumReturned == false:
status = “Planet society has not settled.”
if VolatilityScore near 60:
status_detail = “System is still shaking.”
if PlanetFloorBurn > 60:
planet_detail = “Earth floor degradation is load-bearing, not background noise.”

FINAL_SAMPLE_LINE:
CODE: |
GLOBAL_PLANET_SCORE_SAMPLE = {
“health”: “very weak in sample”,
“volatility”: “high unsettled”,
“equilibrium”: “not returned”,
“human_feel”: “strained”,
“planet_floor”: “warning”,
“movement”: “down from Zero Pin baseline”
}
“`

eduKateSG Learning System | Control Tower, Runtime, and Next Routes

This article is one node inside the wider eduKateSG Learning System.

At eduKateSG, we do not treat education as random tips, isolated tuition notes, or one-off exam hacks. We treat learning as a living runtime:

state -> diagnosis -> method -> practice -> correction -> repair -> transfer -> long-term growth

That is why each article is written to do more than answer one question. It should help the reader move into the next correct corridor inside the wider eduKateSG system: understand -> diagnose -> repair -> optimize -> transfer. Your uploaded spine clearly clusters around Education OS, Tuition OS, Civilisation OS, subject learning systems, runtime/control-tower pages, and real-world lattice connectors, so this footer compresses those routes into one reusable ending block.

Start Here

Learning Systems

Runtime and Deep Structure

Real-World Connectors

Subject Runtime Lane

How to Use eduKateSG

If you want the big picture -> start with Education OS and Civilisation OS
If you want subject mastery -> enter Mathematics, English, Vocabulary, or Additional Mathematics
If you want diagnosis and repair -> move into the CivOS Runtime and subject runtime pages
If you want real-life context -> connect learning back to Family OS, Bukit Timah OS, Punggol OS, and Singapore City OS

Why eduKateSG writes articles this way

eduKateSG is not only publishing content.
eduKateSG is building a connected control tower for human learning.

That means each article can function as:

  • a standalone answer,
  • a bridge into a wider system,
  • a diagnostic node,
  • a repair route,
  • and a next-step guide for students, parents, tutors, and AI readers.
eduKateSG.LearningSystem.Footer.v1.0

TITLE: eduKateSG Learning System | Control Tower / Runtime / Next Routes

FUNCTION:
This article is one node inside the wider eduKateSG Learning System.
Its job is not only to explain one topic, but to help the reader enter the next correct corridor.

CORE_RUNTIME:
reader_state -> understanding -> diagnosis -> correction -> repair -> optimisation -> transfer -> long_term_growth

CORE_IDEA:
eduKateSG does not treat education as random tips, isolated tuition notes, or one-off exam hacks.
eduKateSG treats learning as a connected runtime across student, parent, tutor, school, family, subject, and civilisation layers.

PRIMARY_ROUTES:
1. First Principles
   - Education OS
   - Tuition OS
   - Civilisation OS
   - How Civilization Works
   - CivOS Runtime Control Tower

2. Subject Systems
   - Mathematics Learning System
   - English Learning System
   - Vocabulary Learning System
   - Additional Mathematics

3. Runtime / Diagnostics / Repair
   - CivOS Runtime Control Tower
   - MathOS Runtime Control Tower
   - MathOS Failure Atlas
   - MathOS Recovery Corridors
   - Human Regenerative Lattice
   - Civilisation Lattice

4. Real-World Connectors
   - Family OS
   - Bukit Timah OS
   - Punggol OS
   - Singapore City OS

READER_CORRIDORS:
IF need == "big picture"
THEN route_to = Education OS + Civilisation OS + How Civilization Works

IF need == "subject mastery"
THEN route_to = Mathematics + English + Vocabulary + Additional Mathematics

IF need == "diagnosis and repair"
THEN route_to = CivOS Runtime + subject runtime pages + failure atlas + recovery corridors

IF need == "real life context"
THEN route_to = Family OS + Bukit Timah OS + Punggol OS + Singapore City OS

CLICKABLE_LINKS:
Education OS:
Education OS | How Education Works โ€” The Regenerative Machine Behind Learning
Tuition OS:
Tuition OS (eduKateOS / CivOS)
Civilisation OS:
Civilisation OS
How Civilization Works:
Civilisation: How Civilisation Actually Works
CivOS Runtime Control Tower:
CivOS Runtime / Control Tower (Compiled Master Spec)
Mathematics Learning System:
The eduKate Mathematics Learning Systemโ„ข
English Learning System:
Learning English System: FENCEโ„ข by eduKateSG
Vocabulary Learning System:
eduKate Vocabulary Learning System
Additional Mathematics 101:
Additional Mathematics 101 (Everything You Need to Know)
Human Regenerative Lattice:
eRCP | Human Regenerative Lattice (HRL)
Civilisation Lattice:
The Operator Physics Keystone
Family OS:
Family OS (Level 0 root node)
Bukit Timah OS:
Bukit Timah OS
Punggol OS:
Punggol OS
Singapore City OS:
Singapore City OS
MathOS Runtime Control Tower:
MathOS Runtime Control Tower v0.1 (Install โ€ข Sensors โ€ข Fences โ€ข Recovery โ€ข Directories)
MathOS Failure Atlas:
MathOS Failure Atlas v0.1 (30 Collapse Patterns + Sensors + Truncate/Stitch/Retest)
MathOS Recovery Corridors:
MathOS Recovery Corridors Directory (P0โ†’P3) โ€” Entry Conditions, Steps, Retests, Exit Gates
SHORT_PUBLIC_FOOTER: This article is part of the wider eduKateSG Learning System. At eduKateSG, learning is treated as a connected runtime: understanding -> diagnosis -> correction -> repair -> optimisation -> transfer -> long-term growth. Start here: Education OS
Education OS | How Education Works โ€” The Regenerative Machine Behind Learning
Tuition OS
Tuition OS (eduKateOS / CivOS)
Civilisation OS
Civilisation OS
CivOS Runtime Control Tower
CivOS Runtime / Control Tower (Compiled Master Spec)
Mathematics Learning System
The eduKate Mathematics Learning Systemโ„ข
English Learning System
Learning English System: FENCEโ„ข by eduKateSG
Vocabulary Learning System
eduKate Vocabulary Learning System
Family OS
Family OS (Level 0 root node)
Singapore City OS
Singapore City OS
CLOSING_LINE: A strong article does not end at explanation. A strong article helps the reader enter the next correct corridor. TAGS: eduKateSG Learning System Control Tower Runtime Education OS Tuition OS Civilisation OS Mathematics English Vocabulary Family OS Singapore City OS
A woman in a white suit and tie giving a thumbs-up while sitting at a table in a cafe, with a book open in front of her.