Record native telemetry limits and current service conformance
Some checks failed
Use-case regression gate / usecase-regressions (push) Failing after 6m28s

Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a18e2d-f513-7742-b8e7-12af0b744ff3
This commit is contained in:
tegwick 2026-10-31 15:45:49 +01:00
parent 0ee31b596e
commit 8067a51743
3 changed files with 231 additions and 4 deletions

View file

@ -0,0 +1,200 @@
{
"schema": "coulomb.service-measurement-gap.v1",
"recorded_at": "2026-10-31T14:43:33.505165+00:00",
"task": "CSOC-WP-0012-T11",
"current_signals": {
"schema": "coulomb.existing-telemetry-observation.v1",
"observed_at": "2026-10-31T14:39:40.395913+00:00",
"service_name": "telemetry-prometheus",
"service_uid": "529df0e7-b8a6-4478-8f51-672f50e9eaae",
"selected_metric_names": [],
"queries": {
"coulomb_ready": "kube_deployment_status_replicas_available{namespace=\"coulomb-social\"}",
"coulomb_ingress_metadata": "kube_ingress_info{namespace=\"coulomb-social\"}",
"coulomb_scrape_targets": "up{namespace=\"coulomb-social\"}",
"probe_series_count": "count(probe_success)",
"traefik_series_count": "count(traefik_service_requests_total)"
},
"results": {
"coulomb_ready": {
"resultType": "vector",
"result": [
{
"metric": {
"__name__": "kube_deployment_status_replicas_available",
"container": "kube-state-metrics",
"deployment": "coulomb-social",
"endpoint": "http",
"instance": "10.42.0.7:8080",
"job": "kube-state-metrics",
"namespace": "coulomb-social",
"pod": "telemetry-kube-state-metrics-5c9cd96d7b-c7ch5",
"service": "telemetry-kube-state-metrics"
},
"value": [
1793457579.499,
"1"
]
}
]
},
"coulomb_ingress_metadata": {
"resultType": "vector",
"result": [
{
"metric": {
"__name__": "kube_ingress_info",
"container": "kube-state-metrics",
"endpoint": "http",
"ingress": "coulomb-social",
"ingressclass": "traefik",
"instance": "10.42.0.7:8080",
"job": "kube-state-metrics",
"namespace": "coulomb-social",
"pod": "telemetry-kube-state-metrics-5c9cd96d7b-c7ch5",
"service": "telemetry-kube-state-metrics"
},
"value": [
1793457579.742,
"1"
]
}
]
},
"coulomb_scrape_targets": {
"resultType": "vector",
"result": []
},
"probe_series_count": {
"resultType": "vector",
"result": []
},
"traefik_series_count": {
"resultType": "vector",
"result": []
}
},
"runtime_modified": false
},
"retention_and_readiness_window": {
"observed_at": "2026-10-31T14:41:38.172491+00:00",
"retention_flags": {
"storage.tsdb.retention.size": "10GiB",
"storage.tsdb.retention.time": "10d"
},
"queries": {
"ready_samples_7d": "sum(count_over_time(kube_deployment_status_replicas_available{namespace=\"coulomb-social\",deployment=\"coulomb-social\"}[7d]))",
"minimum_available_replicas_7d": "min(min_over_time(kube_deployment_status_replicas_available{namespace=\"coulomb-social\",deployment=\"coulomb-social\"}[7d]))",
"maximum_available_replicas_7d": "max(max_over_time(kube_deployment_status_replicas_available{namespace=\"coulomb-social\",deployment=\"coulomb-social\"}[7d]))"
},
"results": {
"ready_samples_7d": {
"resultType": "vector",
"result": [
{
"metric": {},
"value": [
1793457697.673,
"20160"
]
}
]
},
"minimum_available_replicas_7d": {
"resultType": "vector",
"result": [
{
"metric": {},
"value": [
1793457697.955,
"0"
]
}
]
},
"maximum_available_replicas_7d": {
"resultType": "vector",
"result": [
{
"metric": {},
"value": [
1793457698.156,
"1"
]
}
]
}
},
"end_to_end_slo_proven": false,
"runtime_modified": false
},
"pending_execution_receipts": {
"observed_at": "2026-10-31T14:38:31.143707+00:00",
"receipts": {
"custody": {
"exists": false
},
"route": {
"exists": false
},
"installation": {
"exists": false
},
"content_release": {
"exists": false
}
},
"mutations": false
},
"interpretation": {
"application_slo_attainment_proven": false,
"monthly_application_window_proven": false,
"readiness_equals_http_availability": false,
"sample_count_proves_gapless_coverage": false,
"maintenance_or_dependency_exclusions_applied": false,
"application_latency_percentiles_available": false,
"configuration_changed": false,
"requires_application_level_signals_and_window_evidence": true
},
"sources": [
{
"path": "registry/release-units/coulomb-social.yaml",
"sha256": "309102bdee9d0ec0057c5d679be729ebd7aa3477d588962c2e757a38946761f6"
},
{
"path": "docs/resource-evidence/service-objectives-and-observations-2026-08.md",
"sha256": "f989738e569022cab572b676a64bc58565b2fad9b9476ea0a0d3c799e7c8d4e4"
},
{
"path": "docs/release/identity-export-release-return-2026-10-31.md",
"sha256": "e78222c650ff3939bb8e8f550e9b75534c9f43badea612a4ea3a2792fba82d01"
}
],
"current_release": {
"observed_at": "2026-10-31T14:44:54.910350+00:00",
"deployment_uid": "2dbe661a-d232-4477-bbd1-833813077fbe",
"generation": 49,
"observed_generation": 49,
"ready_replicas": 1,
"images": [
"forgejo.coulomb.social/coulomb/coulomb-social@sha256:522bcd7fce92436765a60c1e4afa2598f3cc40913352153ff1c4319a99ca92ed"
],
"helm_revision": 19,
"helm_status": "deployed"
},
"statehub_readback": {
"task_id": "61f5f196-40e4-5901-a10e-318304809a00",
"status": "progress",
"measurement_gap_synced": true,
"fix_consistency_exit_code": 0,
"automation_errors": 0,
"assessment_failures": 0,
"warnings": 6
},
"validation": {
"native_read_results_checked": true,
"json_round_trip_checked": true,
"application_code_changed": false,
"new_regression_run_required": false
}
}

View file

@ -7,12 +7,12 @@ evidence from the returns required to finish WP-0012/0014.
| Section | Current evidence | Remaining proof |
| --- | --- | --- |
| 1: shape/tenancy | Standalone repo, `coulomb_social_db`, dedicated deployment/values in railiance-apps. Space/Member tenant keys and explicit membership joins; tests deny foreign tenant/member access. Helm revision 18 applies migration 0003 and verifies global and tenant slug constraints with unchanged business data. | Reconcile all source grants and prove complete tenant export/consolidation without ambiguous paths; global uniqueness alone does not certify a multi-client migration. |
| 1: shape/tenancy | Standalone repo, `coulomb_social_db`, dedicated deployment/values in railiance-apps. Space/Member tenant keys and explicit membership joins; tests deny foreign tenant/member access. Revision 18 applied migration 0003; revision 19 preserved both slug constraints, content and migration history. | Reconcile all source grants and complete client attribution/export scope; global uniqueness alone does not certify a multi-client migration. |
| 2: identity | OIDC/PKCE behind `apps/identity`; app-local users have unusable passwords. Accepted ADR-0001 specializes the local-account baseline. Historical Case B and personal recovery are recorded in docs/identity/smoke.md and the October 6 receipts. | Current registration Case B and source-cohort identity/grant return. The authentication choice is now bound to existing founder decision8bbce691 under §8.3 (T14); broader ADR implementation and current productive identity returns retain their own gates. |
| 3: build/release | Founder storage release verified at Helm revision 18, immutable digest `51281946…`, source `17d0eb6`; all 73 packaged files match. Deployment-owner values and receipt are published at `8434134`, with public health/static and 40 owner/40 outsider checks passing. | Later source changes need their own current-target release acceptance. Forgejo successor provenance is reconciled under T14 with existing founder decisions and completed owner migration evidence; this does not prove build reproducibility or later release acceptance. |
| 4: operations | Deployment Ready, health endpoint/runbooks. October 29 protected provider-only image/tools/pair recovery proved all tables/files and packaged app views in 30.232s, with independent escrow and retained proof. October 30 read-only native operating preflight identifies missing recurring worker mirror receipt; both timers remain absent/inactive. | Current ops-hub client/environment/endpoint registration evidence; admitted recurring *paired* backup with matching mirrored point/receipt, retention/headroom and received failed/stale signals; post-release stage-1 CRUD/copy/transfer smoke and CSOC-IN-0004 reconciliation. Provider-only recovery excludes operator-account recovery and a fresh Docker daemon. Database-only backup does not cover CONTENT_ROOT. |
| 3: build/release | Founder image release verified at Helm revision 19, immutable digest `522bcd7f…`, source `23ffe2c`; all 80 packaged files match. Owner values, public health/static, 40 owner renders and 40 outsider denials are verified in `identity-export-release-return-2026-10-31.md`. Forgejo successor and identity-decision provenance are resolved under T14. | Content lifecycle candidate `d3f2f5bb…` and proposal `c9c32316…` still await their exact release after backup-source installation. Existing byte equality does not prove reproducible dependencies or later release acceptance. |
| 4: operations | Revision 19 is Ready. Its 07:13 paired point was independently mirrored, retrieved and restored with 13 tables/114 rows/86 files. Existing Prometheus has Kubernetes readiness history; the October 31 read finds no Coulomb scrape target or probe/request metrics in the inspected families. Native retention is 10 days. Custody, route, installation and content-release receipts are still absent at 14:38Z. | Authenticated ops registration; admitted recurring paired backup, retention/headroom and received failed/stale signals; application-level availability/latency measurements over the required windows; post-release CRUD/copy/transfer smoke and CSOC-IN-0004 reconciliation. Kubernetes readiness and a point health check do not prove HTTPS availability or user latency. Provider-only recovery excludes operator-account recovery and a fresh Docker daemon. |
| 5: cost | Resource inventory ID `resource:tenant:coulomb:coulomb-social` (not a valid fin-hub client attribution key), dated workload/demand/labor records in docs/resource-evidence; WP-0017 records current requests 15m/176Mi. | Obtain the authoritative client × app × instance mapping and demonstrate its canonical fin-hub key in current finance ingestion and per-instance infrastructure cost report. Planning labor rates and CPU requests are not booked costs. |
| 6: protection | Platform instance isolation, explicit read/write denial, sanitized Markdown, private images, account-local JSON export and successor-aware local exit. October 30 source adds a private operator tenant-dataset ZIP export and schema-derived personal-data inventory; review in client-data-export-review-2026-10-30.md. No credentials copied into these records. | Release and verify coherent current-target client export, resolve external/unattributed data, and agree instance teardown/session/log disposition plus primary/mirror/protected-kit backup expiry (§6.2). Source support does not establish productive offboarding. Productive sharing/portability verdicts and retained-data disposition remain WP-0013. |
| 6: protection | Platform instance isolation, explicit read/write denial, sanitized Markdown, private images, account-local JSON export and successor-aware local exit. Revision 19's packaged tenant export verifies 85 selected files and four record sets on the restored current release point without source mutation. No credentials copied into these records. | Resolve external/unattributed data, private delivery and client acceptance; agree instance teardown/session/log disposition plus primary/mirror/protected-kit backup expiry (§6.2). The coherent export proof does not establish productive offboarding. Productive sharing/portability verdicts remain WP-0013. |
The August service-objectives record is historical. Its RPO ≤60min/RTO ≤4h and
Forgejo content durability assumptions predate the persistent CONTENT_ROOT
@ -23,6 +23,20 @@ Availability 99.5%, health p99 500ms and page latency objectives remain planning
targets, with no current measurement window proving attainment. Preserve dated
observations; do not rewrite August measurements as current facts.
The October31 14:39–14:41 read of the existing private Prometheus service returns
one current available replica and 20,160 readiness samples in the queried seven-day
window, with observed available replicas ranging from zero to one. Sample counts
do not prove uninterrupted coverage, and these values are not HTTP success or
latency measurements. No exclusion of planned maintenance or dependency outages
was applied. The inspected `probe_`, `django_`, `traefik_`, `http_request` and
`http_server` metric families are absent, and `up{namespace="coulomb-social"}`
has no series. Runtime retention is10days/10GiB, not the seven-day package default;
no configuration was changed to reconcile that difference. No retained monthly
application measurement or current percentile proof is established. T11 needs
admitted application-level measurement and retained window evidence, alongside
registration, finance and smoke. Native queries and limits:
`existing-telemetry-2026-10-31.json`.
WP-0012 owns the operating/service returns above. WP-0013 owns privacy/content
verdicts; WP-0014 owns all-space reconciliation and the separate cohort/apex
cutover decision. Existing canonical cross-owner records remain in their owners;

View file

@ -703,6 +703,19 @@ state_hub_task_id: "61f5f196-40e4-5901-a10e-318304809a00"
Remaining T03 service-contract §§1–5 evidence: authenticated ops registration, canonical client × app × instance finance mapping and current ingestion/report, current SLO evidence, and CSOC-IN-0004 stage-1 smoke reconciliation. T14 separately closes the Forgejo successor and existing identity-decision provenance bindings; that source/evidence milestone does not close this operational acceptance task. Consume existing identity/cohort returns from WP-0014/0015 without duplicating owner implementations. Use `docs/release/service-contract-conformance-2026-10-27.md` and `service-provenance-reconciliation-2026-10-30.md`. Resource requests and planning labor are not booked costs.
2026-10-31 current telemetry return: read-only native Prometheus queries find
one current available Coulomb replica and 20,160 readiness samples over seven
days (observed minimum0/maximum1), but no Coulomb scrape target or probe/HTTP
request metric families among the inspected names. Actual retention is10days/
10GiB. Readiness samples do not measure HTTPS availability or authenticated-page
latency, and no monthly window/percentile attainment is established. The concrete
remaining measurement work is application-level signals and retained evidence
for the stated windows, through the existing telemetry owner; no new exporter,
monitor, target, retention setting or public exposure was deployed. Evidence:
`docs/release/existing-telemetry-2026-10-31.json`. The conformance table now reflects
the already verified revision19 release and packaged client export, instead of
leaving revision18/source-only export as its lead state. T11 remains progress.
## T12 — Agree and prove complete client offboarding and expiry
```task