Skip to content

docs(miner): add an 'Observing your miner' Grafana/ledger observability guide - #5424

Merged
JSONbored merged 1 commit into
JSONbored:mainfrom
davion-knight:feat-miner-observability-docs
Jul 12, 2026
Merged

docs(miner): add an 'Observing your miner' Grafana/ledger observability guide#5424
JSONbored merged 1 commit into
JSONbored:mainfrom
davion-knight:feat-miner-observability-docs

Conversation

@davion-knight

Copy link
Copy Markdown
Contributor

Adds packages/gittensory-miner/docs/observability.md — the miner-specific guide for pointing Grafana at the local SQLite ledgers (#5190). Documentation only.

Contents

  • What's observable — the attempt-log.sqlite3 (attempt_log_events) and prediction-ledger.sqlite3 ledgers under GITTENSORY_MINER_CONFIG_DIR.
  • Point Grafana at the ledgers — concrete steps using the read-only frser-sqlite-datasource entries shipped in grafana/provisioning/datasources/ams-ledgers.yml (from Provision a Grafana datasource for AMS's local SQLite ledgers (attempt log + prediction ledger) #5184): install the plugin, mount the config dir read-only at /ams-ledgers, restart.
  • Load a dashboard — how to add/import a dashboard from grafana/dashboards/ and point panels at the AMS Attempt Log / AMS Prediction Ledger datasources (incl. json_extract for payload fields).
  • Linked from coding-agent-driver.md (the existing entry point) so it's discoverable; cross-references DEPLOYMENT.md; does not duplicate the general ops runbook.

Validation

  • All relative links resolve (verified against the tree — ams-ledgers.yml, grafana/dashboards/, DEPLOYMENT.md all exist; no dead links — deliberately does not reference a not-yet-existing dashboard file).
  • prettier-clean; the existing miner-mcp-tool-docs-parity + miner-operations-runbook doc tests still pass after the added cross-reference. Docs only — no code, no CI-logic surface.

Closes #5190

…ty guide

Add packages/gittensory-miner/docs/observability.md documenting how to point Grafana at the
miner's local SQLite ledgers (attempt-log + prediction-ledger) via the read-only frser-sqlite
datasources shipped in grafana/provisioning/datasources/ams-ledgers.yml (JSONbored#5184): install the
plugin, mount GITTENSORY_MINER_CONFIG_DIR read-only at /ams-ledgers, and load a dashboard from
grafana/dashboards/. Concrete copy-pasteable steps; cross-references DEPLOYMENT.md and is linked
from coding-agent-driver.md so it is discoverable from the existing entry point. Docs only —
observability/Grafana setup, not a duplication of the general ops runbook (JSONbored#5190).

Closes JSONbored#5190
@davion-knight
davion-knight requested a review from JSONbored as a code owner July 12, 2026 18:34
@superagent-security

Copy link
Copy Markdown
Contributor

Superagent didn't find any vulnerabilities or security issues in this PR.

@loopover-orb loopover-orb Bot added the gittensor:feature Gittensor-scored feature linked to a feature issue — scores a 0.25x multiplier. label Jul 12, 2026
@loopover-orb

loopover-orb Bot commented Jul 12, 2026

Copy link
Copy Markdown
Contributor

Tip

🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩

✅ Gittensory review result - approve/merge recommended

Review updated: 2026-07-12 19:03:23 UTC

2 files · 1 AI reviewer · no blockers · readiness 100/100 · CI green · clean

✅ Suggested Action - Approve/Merge

  • safe to merge

Review summary
This PR adds a docs-only observability guide for pointing Grafana at the miner's local SQLite ledgers, plus a cross-reference link and prettier reformatting in coding-agent-driver.md. The content is well-structured, links resolve to files referenced elsewhere in the repo (ams-ledgers.yml, grafana/dashboards/, DEPLOYMENT.md), and it closes the linked issue #5190. One inconsistency worth confirming: the relative link depth to ams-ledgers.yml differs between the new doc's two references.

Nits — 6 non-blocking
  • packages/gittensory-miner/docs/observability.md:16-17 and :23 use `../../../grafana/provisioning/...` (three levels up) while the file itself lives at packages/gittensory-miner/docs/, which is only two levels below repo root if grafana/ is at the repo root — worth double-checking the relative path depth is correct rather than assuming it resolves, since a typo here would silently produce a dead link.
  • The coding-agent-driver.md table reformatting (adding fixed-width padding to the markdown table) is unrelated prettier churn bundled with the observability cross-reference addition; harmless but worth calling out as noise in future diffs.
  • observability.md doesn't mention what to do if `frser-sqlite-datasource` plugin installation fails or the ledger files don't exist yet (e.g., a fresh miner with no attempts) — minor gap for a first-time reader.
  • Confirm the `../../../grafana/...` relative path in observability.md resolves correctly given the actual repo layout (verified per PR description, but worth a final sanity check since it's the crux of the guide's usability).
  • Consider a one-line note in observability.md about empty/missing ledger files on a fresh install, since that's a common first-run confusion point for a new datasource.
  • Diff looks like trivial or whitespace-only churn — Reduce whitespace-only or formatting-only churn and keep the diff focused on substantive changes.
Signal Result Evidence
Code review ✅ No blockers 1 reviewer
Linked issue ✅ Linked #5190
Related work ✅ No active overlap found No same-issue or scoped active PR overlap found.
Change scope ✅ 20/20 Low review scope from cached public metadata (1 linked issue).
Validation posture ✅ 25/25 PR body includes validation/test evidence.
Contributor workload ✅ 10/10 Author activity: 124 registered-repo PR(s), 89 merged, 2 issue(s).
Contributor context ✅ Confirmed Gittensor contributor davion-knight; Gittensor profile; 124 PR(s), 2 issue(s).
Gate result ✅ Passing No configured blocker found.
Improvement ⚠️ ℹ️ Insufficient signal risk: low · value: insufficient-signal — Nothing measurable for the structural-improvement analyzers on this PR (e.g. no code files changed).
Review context
  • Author: davion-knight
  • Role context: outside_contributor
  • Public audience mode: oss maintainer
  • Lane context: Repository is configured for direct PR review.
  • Public profile languages: not available
  • Official Gittensor activity: 124 PR(s), 2 issue(s).
  • PR-specific overlap: none found.
Contributor next steps
  • Keep the PR focused and include validation evidence before maintainer review.
Signal definitions
  • Related work = same linked issue, overlapping active PRs, or title/path similarity.
  • Change scope = cached public metadata such as size labels, draft state, and review-burden hints.
  • Validation posture = whether the PR provides enough public validation/test evidence for maintainer review.
  • Contributor workload = public contributor activity and cleanup pressure, not a repo-wide quality failure.
  • Contributor context = public GitHub/Gittensor identity context; non-Gittensor status is not a blocker.
[BETA] Chat with Gittensory

Ask Gittensory a question about this PR directly in a comment — grounded only in the same cached, public-safe facts shown above, never a new claim.

  • @gittensory ask <question> answers contribution-quality Q&A with source citations and freshness.
  • @gittensory chat <question> answers in natural prose from cached decision-pack facts via local inference (maintainer/collaborator; read-only).
  • A plain-language @gittensory mention with a real question is routed to the closest matching read-only command automatically -- no exact syntax required.

Full command reference: https://gittensory.aethereal.dev/docs/gittensory-commands

🟩 Safe / merged · 🟦 Advisory · 🟨 Held for review · 🟥 Blocked / closed


💰 Earn for open-source contributions like this. Gittensor lets GitHub contributors earn for the work they already do — register to start earning →.

Checked by Gittensory, a quiet PR intelligence layer for OSS maintainers.

  • Re-run Gittensory review

@loopover-orb loopover-orb Bot added the manual-review Gittensor contributor context label Jul 12, 2026
@JSONbored
JSONbored merged commit 9e781cb into JSONbored:main Jul 12, 2026
9 checks passed
@loopover-orb loopover-orb Bot added gittensor:bug Gittensor-scored bug fix — scores a 0.05x multiplier. and removed gittensor:feature Gittensor-scored feature linked to a feature issue — scores a 0.25x multiplier. labels Jul 12, 2026
JSONbored added a commit that referenced this pull request Jul 12, 2026
…audit (#5435)

Two real false positives, both currently red on main:

- The audit only scanned packages/gittensory-miner/lib and bin for env
  var reads, missing packages/gittensory-engine/src/miner/ (a real
  dependency the miner uses for coding-agent driver construction).
  MINER_CODING_AGENT_CLAUDE_MODEL/CODEX_MODEL/TIMEOUT_MS are genuinely
  read there (driver-factory.ts) but were flagged as undocumented-in-code.
- extractFilePathClaims recorded a markdown link's full target verbatim,
  including any #anchor fragment, then checked that string against
  existsSync -- so "README.md#coding-agent-driver-configuration" was
  checked as a literal (nonexistent) filename instead of "README.md"
  with a heading fragment.

Both were introduced by #5423/#5424 documenting real, working miner
config but tripping the audit's own scan gaps, not actual DEPLOYMENT.md
drift. Added a regression test for each, verified to fail on the prior
code and pass on the fix.
@JSONbored JSONbored added gittensor:feature Gittensor-scored feature linked to a feature issue — scores a 0.25x multiplier. and removed gittensor:bug Gittensor-scored bug fix — scores a 0.05x multiplier. labels Jul 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

gittensor:feature Gittensor-scored feature linked to a feature issue — scores a 0.25x multiplier. manual-review Gittensor contributor context

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add an 'Observing your miner' doc section to packages/gittensory-miner/docs

2 participants