mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-10-19 18:44:53 +00:00
|
Some checks are pending
Build and Test / Secret Scan (push) Waiting to run
Build and Test / Detect changed areas (push) Waiting to run
Build and Test / Frontend (push) Blocked by required conditions
Build and Test / Backend tests (api) (push) Blocked by required conditions
Build and Test / Backend tests (rest-0) (push) Blocked by required conditions
Build and Test / Backend tests (rest-1) (push) Blocked by required conditions
Build and Test / Script smoke tests & backend build (push) Blocked by required conditions
Build and Test / Benchmarks (push) Blocked by required conditions
Canonical Governance / governance (push) Waiting to run
Core E2E Tests / Validate E2E tier selection (push) Waiting to run
Core E2E Tests / Playwright Core E2E (shard 1/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 2/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 3/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 4/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 5/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 6/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 7/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 8/8) (push) Blocked by required conditions
Core E2E Tests / Agent registration lifecycle (push) Waiting to run
Core E2E Tests / E2E verdict (push) Blocked by required conditions
A second adversarial review round surfaced two robustness gaps. The incident recorder treated any ID absent from a metrics batch as an empty successful sample, which silently rewrites the semantics of a provider whose per-ID method errors or synthesizes for unknown IDs; batch misses now fall through to the per-ID call, keeping the batch for the hot path only. And one bySource mutation site, the PBS host disk association helper, predated the source-target cache invalidation invariant; it now invalidates like every other mutation path. The gap was unobservable today because the adjacent ingest already invalidated, but the invariant is only useful if it is total. Contract-Neutral: robustness fixes inside existing cache and sampling semantics, no resolved values change |
||
|---|---|---|
| .. | ||
| incident_recorder.go | ||
| incident_recorder_additional_test.go | ||
| incident_recorder_batch_test.go | ||
| incident_recorder_concurrency_test.go | ||
| incident_recorder_coverage_test.go | ||
| incident_recorder_test.go | ||