open-standards/openpay/docs/observability/grafana-dashboard.json
Transaction Science a437feb8ab Parallel ingest: 9 issues' worth of work across openpay / smart-byte / eoc
openpay/
  compliance/                     PCI-DSS readiness package (scope-map,
                                  pci-zero-architecture, hsm-kms-guidance,
                                  qsa-checklist), citing PCI-DSS v4.0.1
                                  requirements. (#1)
  examples/pci-zero/              Runnable example demonstrating a deployment
                                  where merchant code never touches a PAN. (#1)
  crates/op-core/                 Tokenized<Card> typestate + NetworkToken
                                  + CardNetwork + Cryptogram. (#2)
  crates/op-rails-card/network_token/
                                  NetworkTokenProvider trait + VTS adapter
                                  + MDES adapter, with deterministic stubs
                                  behind a 'live' feature flag. (#2)
  crates/op-driver-sdk/conformance/network_token.rs
                                  Conformance harness for third-party
                                  NetworkTokenProvider implementations. (#2)
  crates/op-cli/src/ledger/       'openpay ledger as-of' subcommand for
                                  bi-temporal queries. (#3)
  crates/op-orchestrator/src/telemetry.rs
                                  OpenTelemetry span emission per
                                  Payment<S> transition with semantic-
                                  conventions tags. (#3)
  docs/observability/             Grafana dashboard JSON + wiring guide
                                  for the bi-temporal ledger lens. (#3)

smart-byte/
  smart-byte-rs/                  Rust reference implementation: envelope
                                  encode/decode (canonical CBOR + BLAKE3
                                  content addressing), Ed25519 sign +
                                  verify, lockstep BFT commit MVP, Iroh
                                  transport scaffold, CLI. (#4)
  spec/identity_and_key_rotation.md
                                  Adopts KERI SAIDs + key-event log
                                  format; explicitly does not adopt ACDC
                                  chaining wholesale. (#5)
  conformance/v1/                 21 test vectors covering canonicalisation,
                                  SAID computation, signature verification,
                                  lockstep commit, gossip propagation.
                                  CI gate enforces spec/vector coupling. (#6)

eoc/
  eoc-rs/                         Rust + WASM reference implementation:
                                  4-stage cascade (cache -> kv -> graph ->
                                  neural), joule counters via RAPL / NVML /
                                  powermetrics, CLI, wasm-bindgen surface.
                                  18 tests pass. (#7)
  eoc-bench/                      Benchmark harness, MT-Bench and Router
                                  case sets, 'joules per MT-Bench point'
                                  metric, 'eoc-bench run | compare' CLI. (#8)
  standards/sci-for-ai-submission.md
                                  Submission proposal mapping EOC's
                                  receipt schema to GSF SCI-for-AI. (#9)
  cookbook/                       HuggingFace-style cookbook (markdown +
                                  runnable Python) demonstrating EOC's
                                  cascade with HF AI Energy Score. (#9)
  docs/bench-v0.md                Reproducibility doc for eoc-bench.

Workspace state:
- openpay clippy -- -D warnings: clean across all touched crates
- smart-byte-rs cargo test --workspace + clippy: clean
- eoc-rs cargo test --workspace + clippy: clean (18 tests)
- eoc-bench cargo check --workspace + clippy + 15 tests: clean

Rust 1.95.0 edition 2024 pinned at the open-standards root via
rust-toolchain.toml; every workspace inherits.

Closes #1 #2 #3 #4 #5 #6 #7 #8 #9.
2026-05-23 13:24:05 -04:00

131 lines
5.7 KiB
JSON

{
"annotations": { "list": [] },
"editable": true,
"fiscalYearStartMonth": 0,
"graphTooltip": 1,
"id": null,
"links": [],
"liveNow": true,
"panels": [
{
"datasource": { "type": "prometheus", "uid": "prometheus" },
"fieldConfig": { "defaults": { "unit": "ops" }, "overrides": [] },
"gridPos": { "h": 8, "w": 12, "x": 0, "y": 0 },
"id": 1,
"options": { "legend": { "displayMode": "list", "placement": "bottom" }, "tooltip": { "mode": "multi" } },
"targets": [
{ "expr": "sum by (from_state, to_state) (rate(openpay_payment_state_transition_total{rail=~\"$rail\",currency=~\"$currency\"}[5m]))", "refId": "A", "legendFormat": "{{from_state}} → {{to_state}}" }
],
"title": "State-transition rate",
"type": "timeseries"
},
{
"datasource": { "type": "prometheus", "uid": "prometheus" },
"fieldConfig": { "defaults": { "unit": "short" }, "overrides": [] },
"gridPos": { "h": 8, "w": 12, "x": 12, "y": 0 },
"id": 2,
"options": { "legend": { "displayMode": "list", "placement": "bottom" } },
"targets": [
{ "expr": "openpay_payment_in_flight{state=\"Created\",rail=~\"$rail\"}", "refId": "A", "legendFormat": "Created" },
{ "expr": "openpay_payment_in_flight{state=\"Authorized\",rail=~\"$rail\"}","refId": "B", "legendFormat": "Authorized" },
{ "expr": "openpay_payment_in_flight{state=\"Captured\",rail=~\"$rail\"}", "refId": "C", "legendFormat": "Captured" }
],
"title": "In-flight payments by state",
"type": "timeseries"
},
{
"datasource": { "type": "prometheus", "uid": "prometheus" },
"fieldConfig": { "defaults": { "unit": "percentunit" }, "overrides": [] },
"gridPos": { "h": 8, "w": 12, "x": 0, "y": 8 },
"id": 3,
"options": { "legend": { "displayMode": "list", "placement": "bottom" } },
"targets": [
{ "expr": "sum(rate(openpay_payment_state_transition_total{to_state=\"Refunded\",rail=~\"$rail\"}[1h])) / sum(rate(openpay_payment_state_transition_total{to_state=\"Captured\",rail=~\"$rail\"}[1h]))", "refId": "A", "legendFormat": "refund/capture (1h)" }
],
"title": "Refund vs capture ratio (1h trailing)",
"type": "timeseries"
},
{
"datasource": { "type": "prometheus", "uid": "prometheus" },
"fieldConfig": { "defaults": { "unit": "ops" }, "overrides": [] },
"gridPos": { "h": 8, "w": 12, "x": 12, "y": 8 },
"id": 4,
"options": { "legend": { "displayMode": "list", "placement": "bottom" } },
"targets": [
{ "expr": "sum by (rail) (rate(openpay_payment_state_transition_total{currency=~\"$currency\"}[5m]))", "refId": "A", "legendFormat": "{{rail}}" }
],
"title": "Rail split (card · a2a · crypto)",
"type": "timeseries"
},
{
"datasource": { "type": "prometheus", "uid": "prometheus" },
"fieldConfig": { "defaults": { "unit": "ms" }, "overrides": [] },
"gridPos": { "h": 8, "w": 12, "x": 0, "y": 16 },
"id": 5,
"options": { "legend": { "displayMode": "list", "placement": "bottom" } },
"targets": [
{ "expr": "histogram_quantile(0.50, sum by (le, from_state, to_state) (rate(openpay_payment_state_transition_duration_ms_bucket{rail=~\"$rail\"}[5m])))", "refId": "A", "legendFormat": "p50 {{from_state}}→{{to_state}}" },
{ "expr": "histogram_quantile(0.95, sum by (le, from_state, to_state) (rate(openpay_payment_state_transition_duration_ms_bucket{rail=~\"$rail\"}[5m])))", "refId": "B", "legendFormat": "p95 {{from_state}}→{{to_state}}" },
{ "expr": "histogram_quantile(0.99, sum by (le, from_state, to_state) (rate(openpay_payment_state_transition_duration_ms_bucket{rail=~\"$rail\"}[5m])))", "refId": "C", "legendFormat": "p99 {{from_state}}→{{to_state}}" }
],
"title": "Transition latency p50 / p95 / p99",
"type": "timeseries"
},
{
"datasource": { "type": "prometheus", "uid": "prometheus" },
"fieldConfig": { "defaults": { "unit": "ops" }, "overrides": [] },
"gridPos": { "h": 8, "w": 12, "x": 12, "y": 16 },
"id": 6,
"options": { "legend": { "displayMode": "list", "placement": "bottom" } },
"targets": [
{ "expr": "sum by (state, error_class, rail) (rate(openpay_payment_transition_error_total{rail=~\"$rail\"}[5m]))", "refId": "A", "legendFormat": "{{rail}} · {{state}} · {{error_class}}" }
],
"title": "Error rate per state",
"type": "timeseries"
}
],
"refresh": "10s",
"schemaVersion": 39,
"tags": ["openpay", "payments", "ledger"],
"templating": {
"list": [
{
"name": "rail",
"type": "custom",
"label": "Rail",
"options": [
{ "text": "All", "value": ".*", "selected": true },
{ "text": "card", "value": "card" },
{ "text": "a2a", "value": "a2a" },
{ "text": "crypto", "value": "crypto" }
],
"current": { "text": "All", "value": ".*" },
"query": ".*,card,a2a,crypto",
"includeAll": false,
"multi": false
},
{
"name": "currency",
"type": "custom",
"label": "Currency",
"options": [
{ "text": "All", "value": ".*", "selected": true },
{ "text": "USD", "value": "USD" },
{ "text": "EUR", "value": "EUR" },
{ "text": "GBP", "value": "GBP" }
],
"current": { "text": "All", "value": ".*" },
"query": ".*,USD,EUR,GBP",
"includeAll": false,
"multi": false
}
]
},
"time": { "from": "now-1h", "to": "now" },
"timepicker":{},
"timezone": "",
"title": "OpenPay — Bi-temporal Ledger Lens",
"uid": "openpay-ledger-lens",
"version": 1,
"weekStart": ""
}