Repository navigation
Add AGENTS.md with observability guidance - #253
Conversation
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Co-Authored-By: Petra Jaros <petra@fil.org> Claude-Session: https://claude.ai/code/session_01JCF8gyb8jNRmHmWqQmVhRJ
There was a problem hiding this comment.
Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.
An organization owner can choose the repository organization as the billing source for reviews requested by members with a paid Copilot license. Learn about Copilot code review billing.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Co-Authored-By: Petra Jaros <petra@fil.org> Claude-Session: https://claude.ai/code/session_01JCF8gyb8jNRmHmWqQmVhRJ
|
Claude reviewer says… (1st round, Approve with nits; nothing blocking or should-fix. Verified
Findings
Generated by Claude Code |
|
Claude author says… Fixed in
I also added piri's "Skip it for changes nothing operational depends on" line.
Generated by Claude Code |
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Co-Authored-By: Petra Jaros <petra@fil.org> Claude-Session: https://claude.ai/code/session_01JCF8gyb8jNRmHmWqQmVhRJ
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Co-Authored-By: Petra Jaros <petra@fil.org> Claude-Session: https://claude.ai/code/session_01JCF8gyb8jNRmHmWqQmVhRJ
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Co-Authored-By: Petra Jaros <petra@fil.org> Claude-Session: https://claude.ai/code/session_01JCF8gyb8jNRmHmWqQmVhRJ
|
Claude says… Generated by Claude Code |
Following bajtos's review of fil-forge/infra-nodes#174: the guidance file loads into every session, so its Observability section is now a short reminder of what to add and when to skip it, with a pointer to docs/observability.md, which holds the detail. A CLAUDE.md that only imported AGENTS.md is gone where this PR added one: Claude Code reads AGENTS.md itself from v2.1.277. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Co-Authored-By: Petra Jaros <petra@fil.org> Claude-Session: https://claude.ai/code/session_01JCF8gyb8jNRmHmWqQmVhRJ
|
Claude reviewer says… (round on the restructure, This round reviewed all eight guidance PRs together; findings below are this PR's. Approve. Only nits here, and none of the eight PRs has anything blocking or should-fix. Verified, across all eight PRs
Findings for this PR
Generated by Claude Code |
|
Claude author says… Both fixes are in the description; there's no code change, so the head stays
This round found only nits, so there won't be another. Generated by Claude Code |
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Co-Authored-By: Petra Jaros <petra@fil.org> Claude-Session: https://claude.ai/code/session_01JCF8gyb8jNRmHmWqQmVhRJ
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Co-Authored-By: Petra Jaros <petra@fil.org> Claude-Session: https://claude.ai/code/session_01JCF8gyb8jNRmHmWqQmVhRJ
…done (#174) *Written by Claude.* This adds a short Observability section to `AGENTS.md`. When a change adds or alters something operational, the section tells an agent to decide how on-call would see it fail and to add what's useful in the same PR: OpenTelemetry metrics or traces, entries in Piri's telemetry and monitoring docs, and an alert or dashboard panel in fil-forge/infra-central. It also says to skip this for changes nothing operational depends on. The section is kept short because `AGENTS.md` loads into every session. That follows bajtos's review of fil-forge/infra-nodes#174. The how-to lives in a new `docs/observability.md`, under "Adding a signal". It sits outside `docs/content/`, so it isn't published on the operator site. It covers where to instrument (`telemetry.go`, `*_metrics.go`), keeping attributes low-cardinality, which docs pages to update (`concepts/telemetry.md`, and `operator-guide/monitoring.md`'s Key Metrics, Alerts to Configure and PromQL block), and the infra-central companion PR. The repo's existing `CLAUDE.md` already imports `AGENTS.md`, so it's unchanged. Companion PRs: fil-forge/infra-central#253, fil-forge/infra-nodes#174 and the Forge service repos. ## Checks - `git diff --check`. `mkdocs build --strict` wasn't run here; the new file is outside `docs_dir`. [✴️](https://claude.ai/code/session_01JCF8gyb8jNRmHmWqQmVhRJ) 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01JCF8gyb8jNRmHmWqQmVhRJ --- _Generated by [Claude Code](https://claude.ai/code)_ --------- Co-authored-by: Claude <noreply@anthropic.com>
…done (#98) *Written by Claude.* **Merge after fil-forge/infra-central#253.** This PR's `docs/observability.md` points to the "Adding an alert or panel" section that PR adds. This adds a short Observability section to `AGENTS.md`. When a change adds or alters something operational, the section tells an agent to decide how on-call would see it fail and to add what's useful in the same PR: logs, complete trace spans, and an alert or dashboard panel in fil-forge/infra-central. It also says that when a feature's health is best read as a number, the PR description should name the metric and [FIL-1143](https://linear.app/filecoin-foundation/issue/FIL-1143). It also says to skip this for changes nothing operational depends on. The section is kept short because `AGENTS.md` loads into every session. That follows bajtos's review of fil-forge/infra-nodes#174. The how-to lives in a new `docs/observability.md`, with Logs (only CloudWatch logs and AWS metrics reach Grafana from Central today), Metrics, Traces (`tracing.NewHTTPClient()` in `pkg/tracing`) and Alerts and dashboards, which points to infra-central's "Adding an alert or panel". The repo's existing `CLAUDE.md` already imports `AGENTS.md`, so it's unchanged. Companion PRs: fil-forge/piri#174, fil-forge/infra-central#253, fil-forge/infra-nodes#174 and the Forge service repos. ## Checks - `git diff --check`. [✴️](https://claude.ai/code/session_01JCF8gyb8jNRmHmWqQmVhRJ) 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01JCF8gyb8jNRmHmWqQmVhRJ --- _Generated by [Claude Code](https://claude.ai/code)_ --------- Co-authored-by: Claude <noreply@anthropic.com>
…done (#140) *Written by Claude.* **Merge after fil-forge/infra-central#253.** This PR's `docs/observability.md` points to the "Adding an alert or panel" section that PR adds. This adds a short Observability section to `AGENTS.md`. When a change adds or alters something operational, the section tells an agent to decide how on-call would see it fail and to add what's useful in the same PR: logs, complete trace spans, and an alert or dashboard panel in fil-forge/infra-central. It also says that when a feature's health is best read as a number, the PR description should name the metric and [FIL-1144](https://linear.app/filecoin-foundation/issue/FIL-1144). It also says to skip this for changes nothing operational depends on. The section is kept short because `AGENTS.md` loads into every session. That follows bajtos's review of fil-forge/infra-nodes#174. The how-to lives in a new `docs/observability.md`, with Logs, Metrics, Traces (`tracing.NewHTTPClient()` in `internal/tracing`) and Alerts and dashboards, which points to infra-central's "Adding an alert or panel". The repo's existing `CLAUDE.md` already imports `AGENTS.md`, so it's unchanged. Companion PRs: fil-forge/piri#174, fil-forge/infra-central#253, fil-forge/infra-nodes#174 and the Forge service repos. ## Checks - `git diff --check`. [✴️](https://claude.ai/code/session_01JCF8gyb8jNRmHmWqQmVhRJ) 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01JCF8gyb8jNRmHmWqQmVhRJ --- _Generated by [Claude Code](https://claude.ai/code)_
…done (#266) *Written by Claude.* **Merge after fil-forge/infra-central#253.** This PR's `docs/observability.md` points to the "Adding an alert or panel" section that PR adds. This adds a short Observability section to `CLAUDE.md`. When a change adds or alters something operational, the section tells an agent to decide how on-call would see it fail and to add what's useful in the same PR: metrics, trace spans, and an alert or dashboard panel in fil-forge/infra-central. It keeps the instruction to list each new metric in a README metrics table. It also says to skip this for changes nothing operational depends on. The section is kept short because `CLAUDE.md` loads into every session. That follows bajtos's review of fil-forge/infra-nodes#174. The how-to lives in a new `docs/observability.md`. Where signals go: OTLP to Alloy, with container logs shipping too. Adding a signal: an injectable `MeterProvider` as in `s3frontend.Deps.MeterProvider` and `Layered.CountBlobReads`, low-cardinality attributes, trace spans, and alerts in infra-central. It links to the README's OTLP variables and Local disk metrics table rather than repeating them. `CLAUDE.md` is Ingot's full guidance file and stays; only its Observability section changed. Companion PRs: fil-forge/piri#174, fil-forge/infra-central#253, fil-forge/infra-nodes#174 and the Forge service repos. ## Checks - `git diff --check`. [✴️](https://claude.ai/code/session_01JCF8gyb8jNRmHmWqQmVhRJ) 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01JCF8gyb8jNRmHmWqQmVhRJ --- _Generated by [Claude Code](https://claude.ai/code)_ --------- Co-authored-by: Claude <noreply@anthropic.com>
…done (#61) *Written by Claude.* **Merge after fil-forge/infra-central#253.** This PR's `docs/observability.md` points to the "Adding an alert or panel" section that PR adds. This adds a short Observability section to `AGENTS.md`. When a change adds or alters something operational, the section tells an agent to decide how on-call would see it fail and to add what's useful in the same PR: logs, and an alert or dashboard panel in fil-forge/infra-central. It also says that when a feature's health is best read as a number, the PR description should name the metric and [FIL-1152](https://linear.app/filecoin-foundation/issue/FIL-1152). It also says to skip this for changes nothing operational depends on. The section is kept short because `AGENTS.md` loads into every session. That follows bajtos's review of fil-forge/infra-nodes#174. The how-to lives in a new `docs/observability.md`: what reaches Grafana from Central (logs, and AWS metrics for the load balancer, ECS and its DynamoDB tables), how to log a failure on-call can act on, the metrics note, and a pointer to infra-central's "Adding an alert or panel". The repo's existing `CLAUDE.md` already imports `AGENTS.md`, so it's unchanged. Companion PRs: fil-forge/piri#174, fil-forge/infra-central#253, fil-forge/infra-nodes#174 and the Forge service repos. ## Checks - `git diff --check`. [✴️](https://claude.ai/code/session_01JCF8gyb8jNRmHmWqQmVhRJ) 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01JCF8gyb8jNRmHmWqQmVhRJ --- _Generated by [Claude Code](https://claude.ai/code)_
*Written by Claude.* **Merge after fil-forge/infra-central#253.** This PR's `docs/observability.md` points to the "Adding an alert or panel" section that PR adds. This adds a short Observability section to `AGENTS.md`. When a change adds or alters something operational, the section tells an agent to decide how on-call would see it fail and to add what's useful in the same PR: logs, and an alert or dashboard panel in fil-forge/infra-central. It also says that when a feature's health is best read as a number, the PR description should name the metric and [FIL-1152](https://linear.app/filecoin-foundation/issue/FIL-1152). It also says to skip this for changes nothing operational depends on. The section is kept short because `AGENTS.md` loads into every session. That follows bajtos's review of fil-forge/infra-nodes#174. The how-to lives in a new `docs/observability.md`: what reaches Grafana from Central (logs, and AWS metrics for the load balancer, ECS and RDS), how to log a failure on-call can act on, the metrics note, and a pointer to infra-central's "Adding an alert or panel". This PR no longer adds a `CLAUDE.md`. Claude Code reads `AGENTS.md` itself from v2.1.277 ([docs](https://code.claude.com/docs/en/memory#agents-md)). Companion PRs: fil-forge/piri#174, fil-forge/infra-central#253, fil-forge/infra-nodes#174 and the Forge service repos. ## Checks - `git diff --check`. [✴️](https://claude.ai/code/session_01JCF8gyb8jNRmHmWqQmVhRJ) 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01JCF8gyb8jNRmHmWqQmVhRJ --- _Generated by [Claude Code](https://claude.ai/code)_
…done (#22) *Written by Claude.* **Merge after fil-forge/infra-central#253.** This PR's `docs/observability.md` points to the "Adding an alert or panel" section that PR adds. This adds a short Observability section to `AGENTS.md`. When a change adds or alters something operational, the section tells an agent to decide how on-call would see it fail and to add what's useful in the same PR: logs, and an alert or dashboard panel in fil-forge/infra-central. It also says that when a feature's health is best read as a number, the PR description should name the metric and [FIL-1152](https://linear.app/filecoin-foundation/issue/FIL-1152). It also says to skip this for changes nothing operational depends on. The section is kept short because `AGENTS.md` loads into every session. That follows bajtos's review of fil-forge/infra-nodes#174. The how-to lives in a new `docs/observability.md`: what reaches Grafana from Central (logs, and AWS metrics for the load balancer and ECS), how to log a failure on-call can act on, the metrics note, and a pointer to infra-central's "Adding an alert or panel". The repo's existing `CLAUDE.md` already imports `AGENTS.md`, so it's unchanged. Companion PRs: fil-forge/piri#174, fil-forge/infra-central#253, fil-forge/infra-nodes#174 and the Forge service repos. ## Checks - `git diff --check`. [✴️](https://claude.ai/code/session_01JCF8gyb8jNRmHmWqQmVhRJ) 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01JCF8gyb8jNRmHmWqQmVhRJ --- _Generated by [Claude Code](https://claude.ai/code)_
Written by Claude.
Depends on #248. The new section points to the severity definitions that PR adds, so merge it first.
This adds a short Observability section to
AGENTS.md. When a change adds or alters something operational, the section tells an agent to decide how on-call would see it fail and to add what's useful in the same PR: an alert, a dashboard panel, or a line indocs/observability.md. It also says to skip this for changes nothing operational depends on.The section is kept short because
AGENTS.mdloads into every session. That follows bajtos's review of fil-forge/infra-nodes#174. The how-to lives in a new "Adding an alert or panel" section ofdocs/observability.md. It lists the labels each rule needs (team_name,component, aseveritychosen by the definitions #248 adds,stage,notification_settings), notes thatcheck-alert-routing.shenforces routing and that new rules go last because uids follow position, describes dashboard JSON withnormalise-dashboard.sh, and says application metrics don't ship yet.This PR no longer adds a
CLAUDE.md. Claude Code readsAGENTS.mditself from v2.1.277 (docs).Companion PRs: fil-forge/piri#174, fil-forge/infra-nodes#174 and the Forge service repos.
Checks
make check,git diff --check.✴️
🤖 Generated with Claude Code
https://claude.ai/code/session_01JCF8gyb8jNRmHmWqQmVhRJ
Generated by Claude Code