Task · SKT-0052

Two fixed-tick dump runs differ in logs and spans: find the unseeded draw

Description

The 2026-09-08 wave could not prove whole-dump byte identity for the CSP lanes because two unchanged, fixed-tick baseline runs of the safe explicit dump already differed in unrelated log and span output; only the metric and Loki inventory prefix was byte-identical (SHA-256 f85e7080d4002a3b9e3eb028861f0ffd02472b1e79f32122822c3e8b8438adf7). The wave operating model requires every value to derive from a seed unit (generation id, entity identity), never wall clock or a global RNG, precisely so the inventory gate can compare two runs. Bisect which lane and which field differs (diff the two dumps, group by construct/workload and field), find the draw that is wall-clock or global-RNG derived, and fix it at source with a failing-first two-run test. If a difference is by design (SKT-0004 recorded that generation and score COUNTS may vary), record exactly which field and why, and make the dump comparison exclude only that field explicitly rather than tolerating unexplained drift.

Acceptance Criteria

Definition of Done

Implementation Plan

Wave 2026-09-09: bisect the saved fixed-tick diff by field, fix each nondeterministic draw at source with a failing-first two-run test, document only evidenced by-design fields, and prove the final two-run diff.

Implementation Notes

2026-09-09 pre-fix field inventory from the saved fixed-tick diff:

Construct/workload Field First dump Repeat dump
k8s_cluster OTLP pod-log inventory service entry alloy present absent
k8s_cluster OTLP pod-log inventory service entry application-controller present absent
k8s_cluster OTLP pod-log inventory service entry absent cert-manager-controller present
ai_agent / acme-datagen-analysis trace spans inventory includes execute_tool classify_request missing execute_tool classify_request
ai_agent / acme-datagen-extraction-api trace spans inventory includes execute_tool grammar_validate missing execute_tool grammar_validate

Failing-first tests pinned the wall-clock-derived first-tick trace selection and the pod-log draw. Fresh minters now derive first-tick IDs from declared entity identity plus tick ordinal; request timestamps remain time-based, and later ticks remain distinct. just check passed after the required just gen. Two consecutive explicit grafana-ai-o11y dumps were byte-identical with SHA-256 84e02f1fb16bbc9d906f8aca6ba29fc595edf5899c5300bcf598d7123e5fcd87. No by-design field variance remained in inventory shape, so no comparison exclusion was added. The single permitted e2e invocation and exact-head CI passed.

Final Summary

Removed fixed-tick pod-log and trace inventory drift at each draw, with failing-first coverage and a byte-identical whole-dump proof. No variance exclusion was needed.

View the source file on GitHub