docs(recipes): restore duration_seconds + version pin sweep#17
Merged
Conversation
Restores {{ .duration_seconds }} to every run.exit message template
across all 8 platform recipes plus _template.md. The reference was
stripped from mlflow in fcdc11e because Float-typed event fields were
unreachable from message templates; commit 5fda9c1 fixed the engine
(shipped v0.10.0) but no recipe ever re-adopted the feature.
Bumps DING binary pin to >= v0.10.0 across all 9 files (was a range
of v0.3.0–v0.8.0 reflecting authoring time, not feature requirement)
and the container image tag in argo + k8s recipes to match.
Adjacent consistency fixes:
- drain_timeout link in 5 recipes (gitlab-ci, jenkins, buildkite,
mlflow, ray) deep-links to the configuration.md anchor.
- modal + ray phrase "full notifier reference" matching the other 6
recipes' Configuration-section convention. Three other "full
reference" instances in native-surfacing sections (gitlab-ci,
buildkite, k8s) are left as-is — they reference a specific notifier
type, a different sentence pattern.
- modal.md drops a leak of the internal/ingester/json.go path.
Three ML recipes (mlflow, modal, ray) also update their rendered
exit-alert excerpts in the "What you get" section to match the YAML
message — illustrative durations: 42s / 287s / 1843s.
mode: end-of-run sweep already shipped in 9cca220; no changes there.
Verified via:
- grep uniformity (every recipe pinned + carries duration_seconds)
- markdown anchor sweep (11 internal refs resolve)
- ding validate on extracted buildkite + mlflow YAML
- ding test-rule render check: synthetic run.exit event with
duration_seconds=42.5 renders "after 42.5s" in the alert text
Co-Authored-By: Claude Opus 4.7 (1M context) <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.
Summary
Item 3 of 4 in the inward-polish roadmap. Pure docs sweep across
docs/recipes/(no code).{{ .duration_seconds }}to everyrun.exitmessage template (8 platform recipes +_template.md). Engine support landed in v0.10.0 (commit 5fda9c1) but no recipe had been re-adopted since the feature was stripped from mlflow in fcdc11e.>= v0.10.0across all 9 files (was a range of v0.3.0–v0.8.0).ghcr.io/ding-labs/ding:v0.7.0→:v0.10.0) in argo + k8s recipes (3 occurrences each).internal/ingester/json.goleak removed from modal.mode: end-of-runsweep already shipped in 9cca220; no changes there.The 3 "for the full reference" instances in gitlab-ci, buildkite, kubernetes-jobs that link to a specific notifier type are deliberately left as-is — different sentence pattern.
Test plan
grep -L ">= v0.10.0" docs/recipes/*.md— empty (all pinned)grep -L "duration_seconds" docs/recipes/*.md— empty (all reference it).md#anchorrefs all resolveding validate --configon extracted buildkite + mlflow YAML — both exit 0ding test-ruleend-to-end render: synthetic run.exit event withduration_seconds=42.5renders(exit 1 after 42.5s)(not<no value>)Out of scope (deliberately)
mode: end-of-runsweep (already shipped in 9cca220)index.mdstatus changes🤖 Generated with Claude Code