Skip to content

style: apply /style-guide pass to models/track#2728

Open
johndmulhausen wants to merge 3 commits into
mainfrom
style-guide/snippets-includes-20260604-122025
Open

style: apply /style-guide pass to models/track#2728
johndmulhausen wants to merge 3 commits into
mainfrom
style-guide/snippets-includes-20260604-122025

Conversation

@johndmulhausen

Copy link
Copy Markdown
Contributor

Summary

This PR applies the /style-guide skill (Google Developer Style Guide + CoreWeave conventions) to the models/track documentation set, normalizing voice, terminology, placeholders, and procedural patterns across 18 files. The run was fully automated; edits are style-only and require human technical review before merge.

Files edited

  • models/track/config.mdx
  • models/track/create-an-experiment.mdx
  • models/track/environment-variables.mdx
  • models/track/jupyter.mdx
  • models/track/limits.mdx
  • models/track/log.mdx
  • models/track/log/customize-logging-axes.mdx
  • models/track/log/distributed-training.mdx
  • models/track/log/log-models.mdx
  • models/track/log/log-summary.mdx
  • models/track/log/log-tables.mdx
  • models/track/log/media.mdx
  • models/track/log/plots.mdx
  • models/track/log/working-with-csv.mdx
  • models/track/project-page.mdx
  • models/track/public-api-guide.mdx
  • models/track/reproduce_experiments.mdx
  • models/track/workspaces.mdx

Recommendations for technical review

Prerequisites

  • Most how-to pages lack a Prerequisites section. Confirm whether to add prerequisites (W&B account, installed wandb, authenticated session, active project/entity, Python/Jupyter environment, required third-party packages) on config.mdx, create-an-experiment.mdx, jupyter.mdx, log-models.mdx, log-tables.mdx, plots.mdx, working-with-csv.mdx, and reproduce_experiments.mdx.
  • jupyter.mdx: wandb.login() is shown without context about credentials or where to obtain an API key outside Colab.
  • limits.mdx: "Performance" is never defined from a user perspective (page load vs. SDK overhead vs. training-loop latency); consider a symptoms→causes mapping in the intro.
  • plots.mdx: The Bokeh example imports hello.wav without describing or linking it; note that readers must supply their own audio file.
  • project-page.mdx: "Create a project" and "Add notes to a project" don't mention account, team membership, or role requirements.
  • workspaces.mdx: The page is titled "View experiments results" but is entirely about workspaces; reconcile title vs. scope.

Verification steps

  • Most procedures end without expected-outcome confirmation. Add brief "what you should see" sentences after key steps in config.mdx (config saved in Run Overview), create-an-experiment.mdx (artifact location in W&B App), jupyter.mdx (after %%wandb, wandb docker --jupyter), limits.mdx (after workspace reset to manual mode), log-models.mdx (use_model directory verification), log-summary.mdx (after define_metric and run.summary.update()), log-tables.mdx (table-in-workspace and get() confirmation), plots.mdx (chart appearance per type), working-with-csv.mdx (dashboard URL/click path), project-page.mdx (create/delete/star confirmations), reproduce_experiments.mdx (reproduced-run comparison), and workspaces.mdx (save/update template confirmation; clarify the "no details" case under "View your workspace template").
  • jupyter.mdx: Briefly explain the difference between %%wandb (cell magic) and %wandb (line magic).
  • limits.mdx: Throughput-examples tables lack interpretation; confirm the video-table last row (500 MB at 0.07/min = 35 MB/min) is intentional given the 40 MB/min target other rows aim for.

Technical accuracy

  • config.mdx:
    • Line 138: parser.add_argument("-lr", "--learning_rate", type=int, default=0.001, ...) uses type=int with a 0.001 default — likely should be type=float.
    • Line 212: grafana_url is set to a Markdown-link string; confirm the W&B App's References section actually renders Markdown links in config values.
    • Verify current SDK behavior: wandb.init() "starts a background process that syncs and logs your data as a run" (line 32), flattening of nested config dictionaries via dot notation (line 54), and auto-loading of config-defaults.yaml from the script directory (line 231).
  • environment-variables.mdx:
    • WANDB_DISABLE_GIT (line 48): confirm both latest commit and diff are always captured.
    • WANDB_RUN_ID (line 64): verify wandb (not the user) performs the non-word-character → dash conversion.
    • WANDB_QUIET vs. WANDB_SILENT (lines 65–66): clarify the precise behavioral difference.
    • WANDB_RESUME (line 62): verify semantics of allow and whether WANDB_RUN_ID is required only for allow or also must.
    • WANDB_DATA_DIR (line 45): confirm "staging artifacts" wording and that platformdirs.user_data_dir is still the default source.
    • Confirm documented defaults for WANDB_ARTIFACT_DIR, WANDB_DIR, WANDB_CACHE_DIR, and WANDB_CONFIG_DIR match current SDK behavior.
    • WANDB_DOCKER (line 50): verify wandb docker [IMAGE_NAME]:[TAG] --digest is still the current CLI syntax.
    • Multiple entries had ambiguous "we" rewritten with wandb as subject — confirm the SDK/library is the actor in each case.
  • jupyter.mdx:
    • Confirm canonical form between wandb.Run.finish() and run.finish().
    • Verify the Overview tab still surfaces a Colab link.
    • Confirm %%wandb behavior when a cell runs multiple times (line 41).
    • Line 72: ipython.display(...) vs. the display symbol imported on line 76 — verify the inline reference matches IPython.display.display.
    • Line 80 comment "If cell outputs run.finish()" — confirm the comment accurately describes the trigger, since the code calls run.finish() directly.
    • Confirm wandb docker --jupyter still exists and behaves as described.
    • Verify https://wandb.me/jupyter-interact-colab still resolves.
    • Confirm bolded Overview and User Settings match current product UI labels.
    • Confirm whether wandb.init() examples should migrate to the context-manager pattern recommended by the W&B section of the style guide.
  • limits.mdx:
    • Verify throughput recommendations in the three tables (Recommendations at scale, Scalar logging, Video logging) are still current for Multi-tenant Cloud.
    • Confirm: single-value < 1 MB, single-call < 25 MB, run config < 10 MB, 1,000 files per run.
    • Confirm RateLimit-Limit / RateLimit-Remaining are scaled 0–1,000.
    • Confirm the "wait at least 1 second between requests" guidance for public-API requests is still accurate.
    • Confirm wandb sync [RUN-FILE-PATH] accepts a file path (not a directory).
    • Confirm the GraphQL rate-limit description (per IP unauthorized, per user authorized, per project for some SDK requests).
    • Confirm https://wandb.me/log-hf-colab is live.
  • log.mdx:
    • Line 12: verify the SDK itself (not a separate agent/process) performs both the local save and the sync to W&B cloud / private server.
    • Line 30: verify "You can't write to a specific history step. W&B only writes to the 'current' and 'next' step." reflects current SDK behavior.
    • Line 50: confirm wandb.me/code-save-colab is still canonical for the general Code Saving setting, and confirm the in-product label casing.
    • Line 53: confirm W&B (not the user/CI) is the actor uploading requirements.txt to the run's Files tab.
    • Line 85: wandb.run.summary["best_accuracy"] (lowercase run) vs. wandb.Run.log() (uppercase Run) elsewhere — confirm and apply consistently.
    • Line 63: consider linking wandb.Run.watch(model) to its reference.
  • log/customize-logging-axes.mdx:
    • Lines 47–48: custom_step : int and metric_name : int use the int class as a value placeholder — semantically misleading. Consider realistic integers (i, i+1) or bracket-style placeholders.
    • Line 29: intro mentions logarithmic scale, but the worked example uses a squared scale (i**2).
    • Line 84: run.define_metric("train/*", step_metric="train/step") — confirm this is the documented signature and clarify that the first argument is the metric name / glob pattern.
  • log/log-models.mdx:
    • Line 8: the ColabLink URL points to a branch-specific notebook (ken-add-new-model-reg-api). Verify this is stable and not a development fork.
    • Line 50: wandb.Run.use_model() vs. body uses of use_model and run.use_model() — confirm canonical form.
    • Example uses model.h5; verify HDF5 is still recommended over .keras.
    • Confirm run.use_model(...) / run.log_model(...) are canonical vs. module-level wandb.log_model(...).
    • Line 159: name = f"…" uses non-PEP 8 spacing around = for a keyword arg.
    • Verify the reference URI anchor #amazon-s3--gcs--azure-blob-storage-references still matches the target heading in track-external-files.
  • log/log-summary.mdx:
    • "W&B Public API" tab code sample (lines ~99–137) has multiple likely bugs: api referenced without api = wandb.Api(); loop uses project_name but the defined variable is project; pd.DataFrame called although the import is import pandas (not as pd).
    • Confirm the opening paragraph's claim about tensor persistence (binary file + summary statistics: min, mean, variance, percentiles) reflects current behavior.
    • Clarify the antecedent of "It accepts the following values:" (line ~38) — summary argument vs. define_metric.
  • log/log-tables.mdx:
    • Lines 88–115: the "Add data to resumed runs" example has a nested with wandb.init() as run: block inside another wandb.init() context — almost certainly a bug.
    • Confirm the literal artifact-name pattern run-[RUN-ID]-[TABLE-NAME]:[TAG] reflects the actual run-scoped artifact naming convention.
  • log/plots.mdx:
    • The "Interactive custom charts" example uses wandb.plot_table(...) while other examples use wandb.plot.<chart>(...) — confirm both spellings are current.
    • vega_spec_name="carey/new_chart" references a user-specific preset; replace with a placeholder or note it must be replaced.
    • Confirm the "store fig = plt.figure() separately" guidance for the empty-plot error is still current.
  • log/working-with-csv.mdx:
    • Experiments section step 2 opens a wandb.init() with block but the snippet is truncated mid-block (as run: with no body); confirm the partial snippet reads clearly.
    • The final full experiments script is missing import wandb and import pandas as pd — verify intent.
    • wandb.Artifact("iris_artifact", type="dataset") is unscoped; confirm docs recommend fully-qualified artifact names.
    • Verify each CSV row maps to one run, as stated after the line 116 rewrite.
  • project-page.mdx:
    • Line ~232: verify the Usage panel actually links to consumer runs ("indicates and links to the run which output the artifact").
    • Lineage panel: verify "Explode toggle" terminology still matches the current UI.
    • Versions tab: verify the example artifact "zoo-wyhak4p0" still matches the current screenshot.
    • Confirm the UI offers a custom-color option beyond the preset palette ("Another preset or a custom color").
    • Verify the keyboard shortcut and "stop an active run" action-menu path are still accurate.
    • "TEXT AND CODE" — confirm the UI casing.
  • reproduce_experiments.mdx:
    • Split-numbered procedure: source numerals 5–9 may render as 1–5 after a <Tabs> block resets MDX numbering — visual check before merge.
    • [COMMIT-SHA] placeholder previously hinted visually at a Git SHA via 40 characters; confirm the bracketed token is sufficient.
    • The GitHub tab's step 4 references a "Git state" field without a definition or screenshot.
  • workspaces.mdx:
    • Line 168: verify the "v0.70 and later" threshold for deleting workspace templates on Dedicated Cloud / Self-Managed.
    • Line 62: confirm the "all users with access" statement for shared workspace views and whether private/team-only projects behave differently.
    • Lines 223–239: placeholders were converted to [ENTITY-NAME] / [WORKSPACE-URL]; confirm engineering expects bracket-style placeholders in copy/paste samples.

Missing content

  • config.mdx: "below the root" terminology for nested config keys may be unclear; no documentation of precedence/merge behavior across run.config.update(), direct assignment, YAML, and argparse; no callout on which keys can be pinned, character limits, or plain-text vs. Markdown rendering; consider marking or relinking the TF v1 flags section as legacy.
  • create-an-experiment.mdx: image at line 120 uses alt="Quickstart Sweeps Dashboard example" with a Sweeps-specific path on an Experiments page; the <Note> at lines 41–43 may not warrant a notice; confirm "Configure Experiments" / "Log Data During Experiments" link text matches actual page titles; line 85 uses "Learn more about..." instead of the standard "For more information, see..." pattern; decide whether "Run" should be a proper noun.
  • environment-variables.mdx: Singularity section (line 75) lacks a concrete SINGULARITYENV_ example; "Run on AWS" (line 79) ends abruptly after the AWS batch link; the Singularity link points to the older LBL project, not apptainer.org / sylabs.io; the heading anchor change #running-on-aws#run-on-aws is referenced by old slugs in ko/, ja/, and fr/ translations.
  • jupyter.mdx: the bottom <Note> is used for cross-references and could be a "Next steps" / "Related" section; no guidance on ending a session cleanly or kernel restarts mid-run; bracket placeholders ([USERNAME], [PROJECT], etc.) lack a lead-in; code-fence language notebook is not in the CoreWeave standard set (bash, python, yaml, json, text); two long sentences (~36 and ~41 words) could be split.
  • limits.mdx: a commented-out "Metric naming constraints" link is hidden in MDX comments; "Value size" mentions wandb.Media types are "handled differently" without a link; "Metric logging API rate limits" mentions paid vs. free plans without specifying values; three near-identical Multi-tenant Cloud warnings could be consolidated; "Browser considerations" calls out Chrome only; several concepts (Artifacts, offline syncing, public API, GraphQL) lack inline definitions / outbound links; the "Many metrics per run" procedural sentence could be promoted to a bulleted step.
  • log.mdx: title/description vs. body scope mismatch — workflows may belong on subpages; stale commented-out blocks at lines 20–25, 27, and 33–39 reference step= and commit=False; document or remove commit=False references; add a pointer for non-consecutive / out-of-order logging since the doc only states you can't write to a specific history step; consider splitting the 36-word "Compare the best accuracy" sentence; "Best practices and tips" is a single external link to a W&B report.
  • log/customize-logging-axes.mdx: the Globs section (line 76+) is a substantive topic without its own H2; line 97 contains a commented-out Colab link — either restore or remove; alt text (lines 26, 73) contains literal backticks; code comment (line 88) uses w/; inconsistent kwarg spacing (step_metric = custom_step vs. step_metric="train/step").
  • log/log-models.mdx: no guidance on accepted file types or directory structures for log_model; no mention of size limits or large-model considerations; no description of how log_model interacts with remote reference URIs (s3://, etc.); no explanation of versioning behavior or auto-generated aliases on repeated calls; no coverage of use_model error behavior when the artifact doesn't exist; no cross-link to the "link a model to the registry" workflow; :latest alias syntax is used without explanation.
  • log/log-summary.mdx: the list of valid summary values ("min", "max", "mean", "best", "last", "none") lacks one-line definitions, especially distinguishing "best" (requires objective) from "last" (default); the "Run Table" tab procedure (~lines 89–93) doesn't note how to add a summary column that isn't shown by default.
  • log/log-tables.mdx: ArtifactEntry type is referenced in the JoinedTable args table without definition or link; "Visualize tables" is a single sentence; the 200,000-row override Note could be more specific about which sizes / UI operations cause issues.
  • log/plots.mdx: wandb.plot.line_series xs/ys "must match exactly" doesn't clarify shared-x vs. per-line-x auto-detection; confusion-matrix bullet says "either probabilities or predictions but not both," but only preds is shown — consider a probs example; no cross-link to a quickstart establishing wandb.init basics.
  • log/working-with-csv.mdx: no explanation of the 200,000-row artifact limit referenced in code comments; define_metric is mentioned but the example uses run.summary.update() — clarify or remove; link text [Sweeps Hyperparameter Tuning](/models/sweeps/) doesn't match the canonical "Sweeps"; commented-out {% embed %} blocks at lines 11 and 97–99 — remove or restore; inconsistent comment capitalization, an ellipsis, an exclamation, and 200000 without a thousands separator.
  • project-page.mdx: the line ~329 Python sample is collapsed onto a single line — reformat across multiple lines and separate the import; placeholder URLs in the Star-a-project tabs mix <team> / <project-name> / <project_name> instead of the CoreWeave-preferred [PLACEHOLDER-NAME]; the Sweeps tab is a single sentence with only a screenshot; Project roles section doesn't enumerate roles or link to a reference; the Workspace tab section doesn't introduce the "Add panels" control referenced later; verify the "Confirm that your project is available." paragraph belongs under Create a project (currently stranded around line 367 pre-edit).
  • reproduce_experiments.mdx: step 7 ("Optional: Create a Python virtual environment.") provides no command or link; step 1's "Name of the run you want to reproduce" prerequisite is never used explicitly in the procedure (only via branch name in the GitHub tab's step 4).
  • workspaces.mdx: line 176 Colab URL contains a typo in the branch name (Update-wandb-workspaces-tuturial); lines 192–205 contain a large JSX-commented block duplicating the active bullet list above it — decide whether to delete; line 244 references "workspace API examples" without API reference detail; line 234 heading Copy a workspace \saved view` to another workspace` uses inline code for a concept (and changing it would break the anchor).

How to review

  • Each file's changes are style edits only. Compare side-by-side and flag any that change technical meaning.
  • Approve and merge to accept the edits, or close to reject them.

@johndmulhausen johndmulhausen requested a review from a team as a code owner June 4, 2026 16:21
@mintlify

mintlify Bot commented Jun 4, 2026

Copy link
Copy Markdown
Contributor

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated (UTC)
wandb 🟢 Ready View Preview Jun 4, 2026, 4:49 PM

@github-actions

github-actions Bot commented Jun 4, 2026

Copy link
Copy Markdown
Contributor

📚 Mintlify Preview Links

🔗 View Full Preview

📝 Changed (18 total)

📄 Pages (18)

File Preview
models/track/config.mdx Config
models/track/create-an-experiment.mdx Create An Experiment
models/track/environment-variables.mdx Environment Variables
models/track/jupyter.mdx Jupyter
models/track/limits.mdx Limits
models/track/log.mdx Log
models/track/log/customize-logging-axes.mdx Customize Logging Axes
models/track/log/distributed-training.mdx Distributed Training
models/track/log/log-models.mdx Log Models
models/track/log/log-summary.mdx Log Summary
... and 8 more files

🤖 Generated automatically when Mintlify deployment succeeds
📍 Deployment: b1e6a42 at 2026-06-05 19:39:02 UTC

@github-actions

github-actions Bot commented Jun 4, 2026

Copy link
Copy Markdown
Contributor

🔗 Link Checker Results

All links are valid!

No broken links were detected.

Checked against: https://wb-21fd5541-style-guide-snippets-includes-20260604-122025.mintlify.app

@ngrayluna ngrayluna left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please split this into two PRs: Sweeps and Snippets.

Also, some of the comments I've applied to integration PR apply here. Apply those changes and re-run?

@johndmulhausen johndmulhausen force-pushed the style-guide/snippets-includes-20260604-122025 branch from 2039d60 to 4f19936 Compare June 5, 2026 18:35
Apply recurring style rules from ngrayluna's review of the integrations
PR (#2673) to the models/track set:

- "preceding" -> "previous"
- passive -> active voice; W&B (not `wandb`) as the actor performing actions
- third person -> second person (address the reader as "you")
- gloss `wandb` as the W&B Python SDK on first mention where context was missing

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR applies an automated style-guide normalization pass across the models/track documentation set, primarily updating wording, headings, and placeholders, and adding keywords metadata to improve consistency and discoverability.

Changes:

  • Added keywords front matter and updated page introductions for clearer scope and navigation.
  • Standardized voice, terminology, and placeholder formats across examples and procedures.
  • Restructured several sections (headings/lists) for more consistent procedural flow.

Reviewed changes

Copilot reviewed 18 out of 18 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
models/track/config.mdx Adds keywords and refines configuration guidance and section structure.
models/track/create-an-experiment.mdx Clarifies the end-to-end experiment workflow; updates headings and phrasing.
models/track/environment-variables.mdx Adds keywords and rewrites environment-variable descriptions for clarity/consistency.
models/track/jupyter.mdx Adds keywords and refines notebook workflows and magic/inline rendering instructions.
models/track/limits.mdx Adds keywords; reorganizes performance/rate-limit guidance and definitions.
models/track/log.mdx Adds keywords; refreshes logging overview language and common workflow descriptions.
models/track/log/customize-logging-axes.mdx Adds keywords; updates placeholders and explanations around custom step metrics.
models/track/log/distributed-training.mdx Adds keywords; refines distributed logging approaches and troubleshooting wording.
models/track/log/log-models.mdx Adds keywords; rewrites model logging/retrieval narrative and placeholder usage.
models/track/log/log-summary.mdx Adds keywords; updates summary-metrics guidance and the Public API retrieval example.
models/track/log/log-tables.mdx Adds keywords; restructures table workflow sections and updates examples/placeholders.
models/track/log/media.mdx Adds keywords; updates prerequisites and improves explanations of media logging.
models/track/log/plots.mdx Adds keywords; reworks headings and adds more contextual framing around plot types.
models/track/log/working-with-csv.mdx Adds keywords; expands intro and refines CSV→Table/Artifact instructions and wording.
models/track/project-page.mdx Adds keywords; refines project tab descriptions and UI instructions; updates SDK snippet.
models/track/public-api-guide.mdx Adds keywords; clarifies import/export narrative and reorganizes some sections.
models/track/reproduce_experiments.mdx Adds keywords; rewrites steps and standardizes placeholder formatting.
models/track/workspaces.mdx Adds keywords and expands intro; refines saved views/templates and API examples language.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread models/track/log/log-summary.mdx
Comment thread models/track/jupyter.mdx Outdated
Comment thread models/track/public-api-guide.mdx Outdated
Comment thread models/track/project-page.mdx Outdated
Comment thread models/track/log/media.mdx Outdated
Comment thread models/track/workspaces.mdx Outdated
@johndmulhausen

johndmulhausen commented Jun 5, 2026

Copy link
Copy Markdown
Contributor Author

Thanks @ngrayluna! Status on both points:

  • Split into Sweeps + Snippets: style: apply /style-guide pass to models/track #2728 was accidentally based on the wrong branch (it carried the models/sweeps + snippets/_includes commits). I've repointed it to the intended models/track content, so this PR is now models/track only. The sweeps and snippets passes already have their own PRs — style: apply /style-guide pass to models/sweeps #2722 and style: apply /style-guide pass to snippets/_includes #2736 — so the split is covered.
  • Integration-PR feedback: Applied to models/track in 2a44a77 (precedingprevious, W&B-not-wandb as the actor, second person, active voice, wandb=W&B Python SDK on first mention). I left the frontmatter keywords in place for now since that thread's still open on the integrations PR — happy to strip them once we land on a global call.

Ready for another look when you have a sec.

- log/log-summary.mdx: fix Public API example so it runs (add
  `api = wandb.Api()`, `import pandas as pd`, `{project_name}` -> `{project}`)
- jupyter.mdx: correct `ipython.display(...)` -> `IPython.display(...)`
- public-api-guide.mdx: remove broken `#overview-tab` anchor link; refer to
  the Overview tab without a URL
- project-page.mdx: format the collapsed Python SDK snippet across multiple lines
- log/media.mdx: replace `{DESIRED_MAX}` with a concrete integer
- workspaces.mdx: fix title grammar ("experiments" -> "experiment")

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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.

3 participants