Skip to main content

OBS-G3a — Observability Analytics control-room queries

Implementation status: PASS

Semantic validation: PASS

Shared saved-query publication: PASS

Canonical data-path acceptance: PENDING OBS-G2 external routing blocker

Gate C: NOT YET EVALUATED

G3a provides five versioned GoogleSQL queries over the G2 metadata-only envelope. The committed canonical source is:

estate-observability-510700.global.estate-producer-runs._AllLogs

The canonical source remains the only intended Control Room data source. _Default was used only as a temporary validation corpus while OBS-G2 routing was under investigation; it is not an architectural fallback and is not referenced by the committed SQL.

The external routing blocker is tracked in GitHub issue #48:

OBS-G2: Cloud Logging custom sinks do not route fresh receipts

Query set​

fileoperator question
recent-runs.sqlWhat ran recently, and what happened?
latest-observed-state.sqlWhat is the latest observed state of each producer seen by GCP?
needs-attention.sqlWhich currently observed producers need attention?
recent-failures.sqlHas a producer failed recently even if its latest run is healthy?
run-volume.sqlWhat is the logical run volume and rough duration profile?

Every query filters the receipt log, ignores entries labelled routing_probe, and deduplicates by (producer_id, run_id, receipt_sha256) using the newest receive_timestamp. This is application-level logical deduplication; it does not claim Cloud Logging is exactly-once.

State axes remain separate. needs-attention.sql exposes operational axes individually and reports authority_state separately; it does not invent a single health state. latest-observed-state.sql describes only producers observed in GCP, not the complete producer registry or deferred producers.

Real-receipt semantic validation​

The temporary validation corpus in _Default contained three non-probe receipts with three distinct logical keys:

producer.github.census-sampler-check
producer.manual.kb-evidence-selector
producer.local.office-compile

Validation confirmed:

  • the actual G2 json_payload.receipt.* and json_payload.producer.* paths;
  • logical receipt deduplication;
  • exclusion of routing_probe diagnostics;
  • preservation of scheduler, execution, artifact, terminal, and authority axes.

This validation proves the SQL semantics, not the canonical routing path.

Saved-query publication​

The five canonical SQL files are published as shared saved queries in the global location:

estate-recent-runs
estate-latest-observed-state
estate-needs-attention
estate-recent-failures
estate-run-volume

Each saved query uses the exact committed SQL and the description:

OBS-G3 control-room projection. Semantic authority remains projects / producer-run-receipt@1.

At current acceptance, fresh canonical receipts do not route reliably into the dedicated bucket, so Gate C remains blocked on issue #48.

A linked dataset named estate_producer_runs_link exists and is ACTIVE. It is optional convenience infrastructure created after the original G3a packet. G3a does not depend on it.

The v0 query surface remains Observability Analytics. No G3 requirement depends on BigQuery Studio, a linked dataset, or BI tooling.

Explicit non-goals​

G3a does not create or require:

  • a custom dashboard;
  • an analytics view;
  • custom Monitoring metrics;
  • alerts;
  • registry projection / never-observed synthesis;
  • a freshness projector;
  • _Default Analytics enablement.

Decision​

OBS-G3 implementation: PASS
OBS-G3 semantic validation: PASS
saved-query publication: PASS
canonical data-path acceptance: PENDING OBS-G2 / issue #48
Gate C: NOT YET EVALUATED

The implementation is mergeable independently of the external GCP blocker. Gate C can be evaluated only after a fresh canonical receipt reliably appears in the dedicated bucket and the saved queries return canonical rows.