fix(ops): H-3 — align oracle poll/silence with window staleness (#24) #37

Merged
PlasticDigits merged 1 commit from fix/issue-24-oracle-poll-silence into main 2026-08-08 05:11:03 +00:00
PlasticDigits commented 2026-08-08 04:51:56 +00:00 (Migrated from gitlab.com)

Summary

  • Close audit H-3 / #24: default POLL_INTERVAL_SECS 3600 (was 21600) and ORACLE_MAX_SILENCE_SECS 21600 (was 28800), aligned with window DEFAULT_MAX_ORACLE_AGE_SECS.
  • Document INV-ORACLE-OPS-POLL-001 / INV-ORACLE-OPS-SILENCE-001; startup ORACLE_OPS_TIMING_MISCONFIG warnings + verify_oracle_operator_env.sh advisories for footguns.
  • Agent skill skills/oracle-ops-poll-silence; cross-links in README, DEPLOYMENT, ust1-common, and window skill.
  • On-chain throttle / daily / mono unchanged. Full liveness correctness still depends on C-3 / #23 (silence remains CheckTx-keyed until then).

Test plan

  • cargo test -p ust1-oracle-service (19 passed, run twice)
  • Defaults: poll ≤ 1h, silence = 21600 ≤ max age
  • Env override resolve helpers
  • ops_timing_warnings flags legacy 21600/28800
  • Liveness should_alert at new threshold
  • verify_oracle_operator_env.sh advisories on misconfig; clean on defaults
  • Staging restart: logs show poll_interval_secs=3600 / max_silence_since_broadcast_secs=21600
  • SIEM/log drain still pages on LIVENESS_ORACLE_NO_BROADCAST

Acceptance criteria (#24)

  • Default poll ≤ 1h
  • Default silence no longer fires 2h after 6h cutoff (now 21600)
  • README + DEPLOYMENT updated with production relationship
  • Existing tests updated; no on-chain contract logic changes
  • Policy skip / throttle behavior unchanged

Closes #24

## Summary - Close audit **H-3** / [#24](https://gitlab.com/PlasticDigits/ust1-window/-/issues/24): default `POLL_INTERVAL_SECS` **3600** (was 21600) and `ORACLE_MAX_SILENCE_SECS` **21600** (was 28800), aligned with window `DEFAULT_MAX_ORACLE_AGE_SECS`. - Document **INV-ORACLE-OPS-POLL-001** / **INV-ORACLE-OPS-SILENCE-001**; startup `ORACLE_OPS_TIMING_MISCONFIG` warnings + `verify_oracle_operator_env.sh` advisories for footguns. - Agent skill [`skills/oracle-ops-poll-silence`](skills/oracle-ops-poll-silence/SKILL.md); cross-links in README, DEPLOYMENT, `ust1-common`, and window skill. - On-chain throttle / daily / mono **unchanged**. Full liveness correctness still depends on **C-3 / #23** (silence remains CheckTx-keyed until then). ## Test plan - [x] `cargo test -p ust1-oracle-service` (19 passed, run twice) - [x] Defaults: poll ≤ 1h, silence = 21600 ≤ max age - [x] Env override resolve helpers - [x] `ops_timing_warnings` flags legacy 21600/28800 - [x] Liveness `should_alert` at new threshold - [x] `verify_oracle_operator_env.sh` advisories on misconfig; clean on defaults - [ ] Staging restart: logs show `poll_interval_secs=3600` / `max_silence_since_broadcast_secs=21600` - [ ] SIEM/log drain still pages on `LIVENESS_ORACLE_NO_BROADCAST` ## Acceptance criteria (#24) - [x] Default poll ≤ 1h - [x] Default silence no longer fires 2h after 6h cutoff (now 21600) - [x] README + DEPLOYMENT updated with production relationship - [x] Existing tests updated; no on-chain contract logic changes - [x] Policy skip / throttle behavior unchanged Closes #24
PlasticDigits commented 2026-08-08 04:52:24 +00:00 (Migrated from gitlab.com)

mentioned in issue #24

mentioned in issue #24
PlasticDigits commented 2026-08-08 05:10:46 +00:00 (Migrated from gitlab.com)

mentioned in issue #23

mentioned in issue #23
PlasticDigits commented 2026-08-08 05:10:50 +00:00 (Migrated from gitlab.com)

mentioned in issue #25

mentioned in issue #25
PlasticDigits commented 2026-08-08 05:11:04 +00:00 (Migrated from gitlab.com)

mentioned in commit 6ffa7324ae

mentioned in commit 6ffa7324aeb17f350a573674417ae473ea85eecc
PlasticDigits (Migrated from gitlab.com) merged commit 6ffa7324ae into main 2026-08-08 05:11:04 +00:00
PlasticDigits commented 2026-08-08 05:35:31 +00:00 (Migrated from gitlab.com)

mentioned in issue #21

mentioned in issue #21
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
code/ust1-window!37
No description provided.