Summary
The .remindb/config.json example block in docs/configuration.md (lines ~38–48) shows a temperature sub-block whose values differ from the engine defaults in pkg/temperature/config.go DefaultConfig() and from the values stated in skills/remind/SKILL.md. A reader copy-pasting the example as a starting point silently ends up with a non-default temperature policy.
Location
docs/configuration.md lines 38–48 (the "temperature": { ... } block inside the sample JSON)
- Ground truth:
pkg/temperature/config.go:23-35 (DefaultConfig())
- Also contradicted by:
skills/remind/SKILL.md:40 ("HotThreshold 0.5, ColdThreshold 0.1, NotifyThreshold 0.1, boost +0.15, tick 5 min")
Category
documentation (drift)
Impact
Medium. The doc explicitly frames this as the file you'd write to override defaults; the example values are presented as concrete numbers without any "these are illustrative, not defaults" wrapper. The drift below means an operator who treats the example as canonical defaults ends up with a materially different decay/notify policy than the engine they're running:
| Key |
docs/configuration.md example |
DefaultConfig() (code) |
decay_rate |
0.03 |
0.05 |
access_boost |
0.2 |
0.15 |
hot_threshold |
0.7 |
0.5 |
cold_threshold |
0.08 |
0.1 |
notify_threshold |
0.07 |
0.1 |
summarize_rebound |
0.6 |
0.5 |
tick_interval |
"10m" |
5m |
cold_notify_ttl |
"2h" |
1h |
cold_notify_limit |
100 |
50 |
skills/remind/SKILL.md:40 agrees with the code, so the docs disagree with both code and skill — an internal inconsistency a future reader will trip on.
Suggested direction (not applied)
Two clean options, pick one:
- Replace the example values with the actual
DefaultConfig() values, so the sample doubles as a ready-to-use drop-in that documents engine behavior. Add a one-line preamble: "Below shows every knob set to its current default — drop in and edit only the ones you want to change."
- Keep the values, relabel them as deliberate overrides, e.g. wrap with a comment like
// example overrides — see DefaultConfig() in pkg/temperature/config.go for engine defaults, and add a row-by-row "default vs example" table so readers can see at a glance what each line changes.
Option 1 is the smaller-surface fix and the more obvious one under Karpathy's "simple, no surprises" lens.
Filed by the nightly enhancement-scanner routine. Reviewed commit: 00a6c9e9.
Summary
The
.remindb/config.jsonexample block in docs/configuration.md (lines ~38–48) shows atemperaturesub-block whose values differ from the engine defaults inpkg/temperature/config.goDefaultConfig()and from the values stated inskills/remind/SKILL.md. A reader copy-pasting the example as a starting point silently ends up with a non-default temperature policy.Location
docs/configuration.mdlines 38–48 (the"temperature": { ... }block inside the sample JSON)pkg/temperature/config.go:23-35(DefaultConfig())skills/remind/SKILL.md:40("HotThreshold 0.5, ColdThreshold 0.1, NotifyThreshold 0.1, boost +0.15, tick 5 min")Category
documentation (drift)
Impact
Medium. The doc explicitly frames this as the file you'd write to override defaults; the example values are presented as concrete numbers without any "these are illustrative, not defaults" wrapper. The drift below means an operator who treats the example as canonical defaults ends up with a materially different decay/notify policy than the engine they're running:
DefaultConfig()(code)decay_rateaccess_boosthot_thresholdcold_thresholdnotify_thresholdsummarize_reboundtick_intervalcold_notify_ttlcold_notify_limitskills/remind/SKILL.md:40agrees with the code, so the docs disagree with both code and skill — an internal inconsistency a future reader will trip on.Suggested direction (not applied)
Two clean options, pick one:
DefaultConfig()values, so the sample doubles as a ready-to-use drop-in that documents engine behavior. Add a one-line preamble: "Below shows every knob set to its current default — drop in and edit only the ones you want to change."// example overrides — see DefaultConfig() in pkg/temperature/config.go for engine defaults, and add a row-by-row "default vs example" table so readers can see at a glance what each line changes.Option 1 is the smaller-surface fix and the more obvious one under Karpathy's "simple, no surprises" lens.
Filed by the nightly enhancement-scanner routine. Reviewed commit:
00a6c9e9.