4.3 KiB
Parameter Registry — Naming Convention
Scientific style: every parameter carries its genus (which system owns it)
and its species (what it does). genus.species — like Homo sapiens, the
name alone places the thing in the world.
Rules:
- Every parameter has THREE names, all registered:
- Technical name — the machine-precise constant (e.g.
HEBBIAN_LEARN_RATE_DAYS_30), kept for grep, logs, stack traces, and interop with plain code. - Short name —
genus.species, human-readable; what the software references day to day. - Full name — the complete sentence describing exactly what it is.
- Technical name — the machine-precise constant (e.g.
- All three resolve to the same registry row; changing the value changes it everywhere at once.
- No bare values anywhere in code — a number never appears without its technical name.
The only real constants
−1, +1, and the infinity between them.
The space is bounded — nothing exceeds −1 or +1 — but between them lies an uncountable infinity of positions, 0 among them. That interior infinity is a constant too: structure itself, not something anyone invented.
But none of them may appear bare in code — not even these. They
get named like everything else: space.negative-pole (−1),
space.positive-pole (+1), space.neutral (0). The names are how structure stays legible;
bare numerals are how it gets lost. There are exactly three such
names, they are eternal, and they are never redefined.
Everything else is not a constant and must never be invented as
one. Inventing numbers is how systems rot: someone types 0.73,
someone else copies it, soon it's load-bearing folklore nobody can
explain. Worse — any single value like 0.73 is just ONE point
picked from the infinite interior, pretending to be special.
Every other quantity is a named relationship — a registry row carrying what it connects, which direction it pushes, and why its current setting sits where it sits in the continuum. Relationships get tuned; constants don't exist to tune.
Finding new ones — no orphans, no inventions
The failure mode isn't just forgetting what a number does. It's inventing numbers like they're free. So:
- The linter is the shepherd. In kernel code, the only legal bare
literals are
0,1,-1,Infinity,-Infinity(and array indices). Anything else fails the build: "express it as a relationship." - Relationships, not inventions. Need a quantity? Don't mint a constant — name a RELATIONSHIP between existing registered readings ("how fast truth cools when unasserted"), give it three names and a why, and set its current value as data.
- Tuning proposes, registry disposes. When behavior feels wrong, that instinct reveals a missing relationship — propose the row.
- Periodic sweep. Repeated suspicious literals get converted into relationships or deleted.
The registry doesn't collect constants. It catalogs how this system's quantities relate — because π was never a number either; it's a relationship we got lucky enough to shorten.
Registered parameters
hebbian (activation learning)
hebbian.warmth-per-use— tech:HEBBIAN_WARMTH_PER_USE— How much each use strengthens a memory toward +1.hebbian.cool-off— tech:HEBBIAN_COOL_OFF_DAYS— Days ignored before warmth fades to half.
validity (truth-now)
validity.fade— tech:VALIDITY_FADE_DAYS— How fast unasserted truth cools toward doubt.
groundedness (evidence)
groundedness.staleness— tech:GROUNDEDNESS_STALENESS_DAYS— How old evidence gets before it stops counting fresh.
memory (time-sense)
memory.recent-horizon— tech:MEMORY_RECENT_HORIZON_DAYS— What still counts as "recently," in days.
retrieval (attention during search)
retrieval.opinion-volume— tech:RETRIEVAL_OPINION_VOLUME— How much louder judgment speaks than word-matching.retrieval.surface-line— tech:RETRIEVAL_SURFACE_LINE_MIN_SCORE— Lowest score worth showing to anyone.attention.spotlight— tech:ATTENTION_SPOTLIGHT_MAX_RESULTS— How many things can be shown at once.
pulse (the float)
pulse.float-size— tech:PULSE_FLOAT_CAPACITY_ENTRIES— How much raw experience fits in the loop at once.pulse.forget-after— tech:PULSE_FORGET_AFTER_DAYS— How long raw experience lasts before evaporating.