Skip to content

CadenceGovernor + time-series self-monitoring (ADR-0009) #74

Description

@filipeforattini

What to build

Add a CadenceGovernor that shapes per-host/identity request timing with human-like structure (reading dwell, inter-request jitter, session length + breaks, optional circadian pacing), bounded below by the politeness rate limiter and scaled by the PolicyProfile. Observed cadence is written to the crawl-events time-series and self-monitored (burstiness/frequency thresholds) to back off when the pattern looks bot-like. Cadence state lives in the StealthProfile. See ADR-0009.

Acceptance criteria

  • Request timing is shaped per host (dwell/jitter/session breaks), never faster than the politeness floor.
  • Shaping scales with PolicyProfile (fast disables, forensics maximises).
  • Observed cadence is written to the time-series and a burstiness self-check backs off when anomalous.
  • Tests cover pacing bounds and the self-monitor back-off.

Blocked by

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    blocked:dependencyWaiting on other issues (req:N edges); auto-unblocks when the last dependency closesreq:71Blocked on #71

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions