Description
The SK-99 fallback verified that two emitted operation_type values reverse kubelet CRI method spelling and omit an observed sandbox operation. This makes plausible synthetic series carry values the current upstream kubelet cannot produce.
Acceptance Criteria
- #1 The representative emitted operation_type values use exact current kubelet CRI instrumentation strings and include the captured sandbox operation
- #2 The signals catalogue distinguishes the complete upstream source-defined set from synthkit representative emission
- #3 Focused tests pin the representative emitted values and pass
Definition of Done
- #1 just check (fmt-check, lint, gen-check, env-check, docs-check, test, race, hygiene, ui-check, compose-check, helm-test, lab-check, signal-fidelity)
- #2 just gen (only if a blueprint field, construct/workload config struct, or a skill under plugins/synthkit/skills/ changed)
- #3 just dump — inventory diffed against signals/
Implementation Plan
- Add a focused test for the representative runtime-operation set. 2. Replace the two reversed container verbs and add the live-observed sandbox operation. 3. Record the complete upstream source-defined set separately from the plausible representative subset. 4. Run focused and repository gates.
Implementation Notes
Context7 current-source lookup returned no matching documentation twice. Fallback source evidence is Kubernetes upstream commit b2ec8b6fefac451a2dedafc4dd71f2f16c7a6abe; its instrumented CRI service passes literal operation strings to both runtime-operation counters.
Failing-first focused test showed the old emitted set exactly: container_start, container_stop, create_container, pull_image, remove_container. After correction, the focused test passed. Final gates passed: just check exit 0; explicit safe 28-blueprint dump reported 2,917 Prometheus names, 430 OTLP names and zero Agent Observability kinds; just e2e received all 1,139 declared metric families, four log sources and two trace services with zero sigil kinds.
CodeRabbit completed on all seven changed source/catalogue files. Its minor punctuation finding was fixed. Its major future-date finding was valid against the live clock; all fallback evidence now records the actual 2026-09-06 date rather than the campaign filename date.
Final Summary
Corrected kubelet runtime-operation label spelling from current upstream source, added the independently captured run_podsandbox value, documented the complete source-defined set separately from synthkit representative emission, and pinned the emitted subset with a failing-first regression. Focused, full, explicit dump and Docker e2e gates passed.