Skip to content

[docs] milestones m15 rubric: precursor edits (R-4/R-5/R-8)#95

Merged
trilamsr merged 1 commit into
mainfrom
m15-rubric-precursor-edits
May 19, 2026
Merged

[docs] milestones m15 rubric: precursor edits (R-4/R-5/R-8)#95
trilamsr merged 1 commit into
mainfrom
m15-rubric-precursor-edits

Conversation

@trilamsr

Copy link
Copy Markdown
Contributor

Summary

Three build-approach-independent rubric refinements for M15, surfaced by the research doc (PR #92) and locked-in by RFC-0010 (PR #94). Five additional rubric edits (R-1, R-2, R-3, R-6, R-7) are intentionally withheld per the rationale below.

Diff

3 lines changed in MILESTONES.md:

  • R-4 (cosmetic): max_log_size citation now references the OTel container stanza operator default. 1 MiB matches; documents the prior art whether we depend on it (BA-1) or port it (BA-2 per RFC-0010).
  • R-5 (new reliability caveat): containerd #11149 silently drops bytes from 0.log when an in-container process reads its own FD 1. Mechanism is shared-pipe contention, not generic backpressure (round-1 research framed it incorrectly; the 2025-01-22 reproducer in the issue pinpoints the mechanism). Standard workloads unaffected.
  • R-8 (degraded-mode specificity): rotation-stalled is now defined concretely as 0.log size > containerLogMaxSize for ≥30 s (3× kubelet default containerLogMonitorInterval of 10 s, cited at source). Surfaced via IncError("rotation_stalled"). Prior text was generic "kubelet rotation breakage" with no detection mechanism.

Why not the other 5 rubric edits

  • R-1 / R-2 (namespace): OD-12 effectively resolved by the upstream proposal at docs/proposals/gen-ai-training-semconv.md (PR [docs] m13 industry-alignment pass: RFC-0009 + gen_ai.training.* proposal + FOLLOWUPS #93 closed the O4-overdue first-draft KPI). No rename needed.
  • R-3 / R-7 (rotation correctness, gzip handling): deferred pending the corresponding TestContainerStdout_* integration-test fixtures landing in the M15 implementation phase per RFC-0010.
  • R-6 (bbolt cursor): dropped because BA-2 keeps the JSON cursor at /var/lib/tracecore/container_stdout/cursor.json as originally rubricked.

Test plan

  • make doc-check clean (273 markdown links resolve, banned-phrase lint clean across 67 files, RUNBOOK ↔ alerts pairing clean).
  • Containerd #11149 mechanism re-verified at the issue's 2025-01-22 reproducer comment; mechanism is shared-pipe contention.
  • containerLogMonitorInterval default cited verbatim at pkg/kubelet/apis/config/v1beta1/defaults.go; verified in research §13.8.

🤖 Generated with Claude Code

Three build-approach-independent rubric refinements from the M15
research evidence base (PR #92) and RFC-0010 (PR #94):

- R-4 (cosmetic): max_log_size citation now references the OTel
  `container` stanza operator default (1 MiB matches; documents the
  prior art whether we depend on it via BA-1 or port it via BA-2).
- R-5 (new reliability caveat): containerd #11149 silently drops
  bytes from 0.log when an in-container process reads its own FD 1.
  Shared-pipe contention; not generic backpressure. Standard
  workloads unaffected. Was previously misframed in research round 1
  as "disk-I/O backpressure"; the 2025-01-22 reproducer in the issue
  pinpoints the mechanism.
- R-8 (degraded-mode specificity): rotation-stalled is now defined
  concretely as 0.log size > containerLogMaxSize for ≥30 s
  (3× kubelet default containerLogMonitorInterval of 10 s, cited at
  source). Surfaced via IncError("rotation_stalled"). Prior text was
  generic "kubelet rotation breakage" with no detection mechanism.

R-1 / R-2 (namespace) withheld: OD-12 effectively resolved by the
upstream proposal at docs/proposals/gen-ai-training-semconv.md
(O4-overdue first-draft KPI closed PR #93). No rename needed.

R-3 / R-7 (rotation correctness, gzip handling) deferred: pending
the corresponding integration-test fixtures (TestContainerStdout_*)
landing in the M15 implementation phase per RFC-0010.

R-6 (bbolt cursor) dropped: BA-2 build approach (RFC-0010) keeps the
JSON cursor at /var/lib/tracecore/container_stdout/cursor.json as
originally rubricked.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@trilamsr trilamsr force-pushed the m15-rubric-precursor-edits branch from 10cad96 to 6a48806 Compare May 19, 2026 19:58
@trilamsr trilamsr merged commit f322255 into main May 19, 2026
8 checks passed
@trilamsr trilamsr deleted the m15-rubric-precursor-edits branch May 19, 2026 20:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant