This repository was archived by the owner on Aug 5, 2026. It is now read-only.
cdc traces: SetupTracing + cross-composition propagation + digest exclusion (KOS-1 Phase 2+3) - #12
Merged
Merged
Conversation
…ase 2+3) Pull the tracing-capable lib (v1.3.0: metrics resource attrs + SetupTracing + reconcile span) and the traceparent-stamping post-renderer (plumbing v1.7.7, the v1.7.x maintenance line that retains slogs/pretty -- the divergent v1.8.x line dropped it). Build/vet green; inert until the SetupTracing wiring + composition.go inject land (next). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…st exclusion (KOS-1 Phase 2+3) Wire the v1.3.0 lib's trace pipeline into cdc: - main.go: OTEL_TRACING_ENABLED flag + telemetry.SetupTracing (gated, default off); service.version from SERVICE_VERSION env; the watched type as krateo.io/composition-gvr via OTEL_RESOURCE_ATTRIBUTES (clean schema -- composition-id stays the per-instance UID). - composition.go: stamp the active reconcile trace onto child manifests (InjectTraceparent -> postRender.WithTraceparent) at Observe + Create, so child compositions continue the trace. - processor.go: EXCLUDE krateo.io/traceparent (+ tracestate) from ComputeReleaseDigest, so the per-reconcile trace value never triggers a spurious helm Upgrade (churn-safety). Test proves two manifests differing only in traceparent hash identically. Build/vet/tests green. Default-off => byte-identical behavior until enabled. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
cdc traces: SetupTracing + cross-composition propagation + digest exclusion (KOS-1 Phase 2+3)
Part of braghettos/krateo-installer#112 — step ③. Wires
unstructured-runtime v1.3.0's trace pipeline +plumbing v1.7.7's traceparent stamping into cdc.Changes
go.mod: repinunstructured-runtime v1.3.0+plumbing v1.7.7(the v1.7.x line — the v1.8.x fork droppedslogs/prettythe chain needs).main.go:OTEL_TRACING_ENABLEDflag +telemetry.SetupTracing(gated, default-off). Clean-schema identity:service.versionfromSERVICE_VERSIONenv; watched type askrateo.io/composition-gvr(viaOTEL_RESOURCE_ATTRIBUTES);krateo.io/composition-idstays the per-instance UID.composition.go: stamp the active reconcile trace onto child manifests (InjectTraceparent→postRender.WithTraceparent) at Observe + Create → child compositions continue the same distributed trace.processor.go: excludekrateo.io/traceparent/tracestatefromComputeReleaseDigest— else the per-reconcile trace value churns a helm Upgrade every reconcile. Fast-path keeps traceparent-free manifests hashing as before. Test proves two manifests differing only in traceparent hash identically.Validated
go build/vet/testgreen. Default-off → byte-identical until enabled. On tag, the image builds + auto-PRscore-provider-chartcdc.image.tag.🤖 Generated with Claude Code