Skip to content

Chart Piri's CommP queue and alert when its claims stall - #291

Merged
alanshaw merged 1 commit into
mainfrom
ash/feat/piri-commp-delay-panel
Oct 21, 2026
Merged

alanshaw merged 1 commit into
mainfrom
ash/feat/piri-commp-delay-panel

Conversation

@alanshaw

@alanshaw alanshaw commented Oct 20, 2026 •

Copy link
Copy Markdown
Member

Companion to fil-forge/piri#187, which holds each accepted blob for pdp.aggregation.commp.delay (one hour by default) before a CommP task may claim it, so a blob deleted soon after upload costs no CommP and no on-chain root.

Panels (Forge Regions, region tab, below the Ingot panels):

  • Piri CommP queue: per node, blobs held by the delay against blobs past it with no CommP task yet. The held line tracks ingest rate times the delay; the due line sits at zero and rises only when claims stop.
  • Piri blobs released before aggregation: per hour and per node, split by stage. before_commp is what the delay is saving.
  • Piri releases caught by a CommP delay of N: from the age histogram, the share of the last day's releases that fell within 1, 5, 15, 30 and 60 minutes of acceptance, per node. Each line is what a delay of that length catches, which is what decides whether the default should move.

Alert (appliance group, warning): Piri CommP claims have stalled, when piri_pdp_commp_due_blobs_oldest_seconds has been over ten minutes for ten minutes. A due blob is claimed on the task engine's next poll, so this is the engine down or saturated, not CommP being slow.

The metrics ship once piri#187 is deployed; until then the panels are empty and the rule has no series, which no_data_state = OK keeps quiet. tofu validate and tofu fmt -check pass; the dashboard is normalised.

🤖 Generated with Claude Code

@github-actions

Copy link
Copy Markdown

Previews for this pull request — in Dashboard PR previews, deleted when it closes. Read-only, and tagged preview.

Piri now holds each accepted blob for pdp.aggregation.commp.delay before a
CommP task may claim it (fil-forge/piri#187). Three panels on the Regions
dashboard show the queue per node: blobs held by the delay against blobs
past it with no task yet; blobs released before aggregation by whether
their CommP had been computed, which is what the delay saves; and, from
the age histogram Piri records for those releases, the share released
within 1, 5, 15, 30 and 60 minutes of acceptance, which is what a delay of
each length catches and so whether the default should move. One appliance
rule warns when the oldest due blob has gone unclaimed for ten minutes,
which is the task engine down or saturated.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@alanshaw
alanshaw force-pushed the ash/feat/piri-commp-delay-panel branch from 6a5e72f to 14e29fb Compare October 21, 2026 10:55
@alanshaw
alanshaw requested a balanced review from Copilot October 21, 2026 10:55

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The focused observability changes match the companion metrics and existing alert patterns, with no unresolved findings.

No open issues 🎉

What changed in this PR

Adds Grafana visibility into Piri’s delayed CommP processing, complementing the metrics introduced in fil-forge/piri#187.

Changes:

  • Adds panels for queue depth, early releases, and delay effectiveness.
  • Adds a warning for stalled CommP claims, remaining quiet when metrics are absent.
  • Documents the new alert.
File Description
terraform/​envs/​grafana/​dashboards/​forge-regions.json Adds three Piri panels to the region tab.
terraform/​envs/​grafana/​alerts.tf Adds the stalled CommP claims warning.
docs/​observability.md Lists the new alert.

Review effort: Balanced

@alanshaw
alanshaw merged commit 1ccc60f into main Oct 21, 2026
28 checks passed
@alanshaw
alanshaw deleted the ash/feat/piri-commp-delay-panel branch October 21, 2026 10:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants