mirror of
https://github.com/razzant/ouroboros.git
synced 2026-10-19 10:04:16 +00:00
OUROBOROS_SOFT_TIMEOUT_SEC and OUROBOROS_HARD_TIMEOUT_SEC stopped terminating anything when the activity model (idle window + subtree liveness + absolute ceiling) replaced them. What survived was five surfaces discussing a value none of them obeyed: SETTINGS_DEFAULTS offered it, the Settings UI accepted a number, the save response apologised for it, queue.init compared the caller's value against the constant it then wrote anyway and logged a deprecation row, and /status printed "legacy_timeouts_ignored: soft=600s, hard=1800s" on every request. A knob discussed everywhere and obeyed nowhere reads as a live tunable. Retired through the existing idiom - RETIRED_SETTING_KEYS, stripped on load. No successor knob (the activity model already governs), so nothing to seed. Gone with them: both globals and init parameters in queue/workers, the _emit_timeout_deprecation_once emitter and its latch, the gateway's _RETIRED_NO_EFFECT_KEYS bucket (a retired key cannot reach an effect bucket at all, so _effect_buckets no longer needs the warnings parameter), the status_text parameters and legacy line, the server reads and ctx fields, the bench settings carriers and the TB forwarded-env allowlist, and the two ARCHITECTURE rows. rc_audit's `since` stopped being a one-key special case: RETIRED_IN_THIS_ABI names the distinction, so an upgrading install still learns the difference between "stopped working in THIS upgrade" and "was already inert". Pins: tests/test_legacy_timeout_retirement.py (10 cases, incl. a grep-class sweep and the auditor's since/behavior). The N-1 fixture carries the pair at its DEFAULT values - a default-valued ghost is the one nobody looks for - so the rc_audit fixture suite now pins that both produce a retired-setting finding. Two tests that asserted the old no-op semantics are reshaped, not deleted. Disclosed: saving the key through POST /api/settings no longer returns an explicit "Retired setting(s) saved" warning; it is merged away silently like every other retired key. Restoring it would mean reading the raw body for keys the merge deliberately never looks at. |
||
|---|---|---|
| .. | ||
| benchmarks | ||
| __init__.py | ||
| README.md | ||
Ouroboros Devtools
devtools/ contains operator-side and benchmark support code that should be
versioned with Ouroboros without becoming part of the runtime core.
Rules:
- Generated logs, datasets, run outputs, Docker layers, and secrets do not live here.
- Default benchmark outputs go under
/Users/anton/Ouroboros/bench_runs/. - Runtime modules must not import
devtools. - This is not an immune-system bypass: touched files are reviewed normally.
- Promote code out of
devtoolsonly through a separate reviewed runtime plan.