Skip to content

feat(signals): add queue pressure and review velocity trend windows #110

Description

@JSONbored

Parent roadmap: #82

Background

A queue snapshot is useful, but trends tell maintainers whether a repo is improving or becoming overloaded.

Goal

Add 7/14/30-day queue pressure and review velocity trends for registered repos.

Current Behavior

Queue pressure and burden forecasts are mostly point-in-time snapshots.

Desired Behavior

Repo intelligence can show PR growth, stale rate, review latency, merge/close velocity, and duplicate trend over time.

Implementation Requirements

  • Store compact time-window aggregates.
  • Generate trends from snapshots/jobs, not broad request-time scans.
  • Feed trend warnings into maintainer intelligence and private MCP/API.
  • Keep large repo work bounded.

Public/Private Output Boundaries

Signal data can inform private API/MCP outputs. Public GitHub output must use only sanitized, maintainer-friendly summaries and must not expose private scoreability or contributor scoring internals.

Acceptance Criteria

  • Trends are available for repos with enough history.
  • Missing history produces a clear unavailable state.
  • Large queues stay within Worker budget.
  • Request paths read snapshots.

Testing Requirements

  • npm run test:ci must pass.
  • Global coverage must remain at or above 97% for lines, statements, functions, and branches.
  • Aim for 98%+ branch coverage locally to avoid CI variance.
  • Add tests for every new branch, fallback path, sanitizer rule, and regression.
  • Add invariant/property-style tests when behavior depends on sorting, gating, scoring, queue pressure, source-upload safety, public/private boundaries, or upstream drift.
  • Public GitHub output must be tested against forbidden language: wallet, hotkey, raw trust score, payout, reward estimate, farming, private reviewability, and public score estimate.
  • MCP/local tooling must prove source contents are not uploaded.

Additional Test Scenarios

  • 7/14/30-day fixtures.
  • Missing history fixture.
  • Large queue performance fixture.
  • Deterministic trend sorting.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions