Skip to content
This repository was archived by the owner on Jul 17, 2026. It is now read-only.

feat(campaign-view): pd-campaign-view — the standard campaign workspace view, as code#986

Open
claude-spd1 wants to merge 1 commit into
feature/jaxfrom
bridge/task-tidy-wandb-campaign-view
Open

feat(campaign-view): pd-campaign-view — the standard campaign workspace view, as code#986
claude-spd1 wants to merge 1 commit into
feature/jaxfrom
bridge/task-tidy-wandb-campaign-view

Conversation

@claude-spd1

Copy link
Copy Markdown
Collaborator

Description

Part 2 of the wandb-logging tidy (board task tidy-wandb-logging-structure), independent of #985.

New lab CLI pd-campaign-view <group> [--project ...] [--entity ...] saves the standard wandb workspace view for a campaign: sections mirroring the canonical metric namespaces —

  1. Refereeeval/loss/PGDReconLoss (log-y), CI-masked KL + CE difference, plus a markdown panel stating the team convention (compare arms on last-5/10-eval medians, mid-window reads).
  2. Recon quality — the six eval/ce_kl/kl_* variants + the five ce_difference_*.
  3. Train losses — total, faith + imp-min variants, the common recon-term set.
  4. Health — grad-norm summary medians, train/mem/peak_gb_per_rank, train/perf/step_time_s.
  5. Schedules — the three LRs + the imp-min anneal param.

Runset is filtered on Group == <group> (ws.Metric("Group")). Run-shaped key families (per-site eval/l0/*, grad-norm leaves) stay in the hidden-panels pool for the campaign author to pull in — the view is a seed, not a cage.

This resurrects the torch-era create_workspace_view idea (deleted in the JAX migration; the wandb-workspaces dep survived unused) in versioned-standard form: the layout evolves by PR instead of per-campaign UI hand-building.

Motivation and Context

Every recent campaign (smooth-l0-matrix-100k, muon-cifn-matrix, routep-sched-1, …) hand-built its saved view from scratch. The board task asks to standardize that.

How Has This Been Tested?

Does this PR introduce a breaking change?

No. Additive: one new module, one console script, doc rows in the two CLAUDE.mds.

Known limitation (documented in the module docstring): re-running creates a new view rather than updating in place — the wandb API exposes no list-views surface to find an existing view by name.

Crew-Address: task/tidy-wandb-logging-structure

🤖 Generated with Claude Code

…ce view, as code

A campaign (one wandb group + a saved workspace view) has hand-built its view per
campaign since the torch-era create_workspace_view died in the JAX migration (the
wandb-workspaces dep survived, unused). pd-campaign-view <group> saves the standard
view — referee / recon quality / train losses / health / schedules sections over the
canonical metric keys, runset-filtered on the group — so the layout is versioned and
evolves by PR instead of UI fiddling.

Verified end-to-end against the smooth-l0-matrix-100k campaign:
https://wandb.ai/goodfire/param-decomp?nw=kb666b2nyzk

Crew-Address: task/tidy-wandb-logging-structure

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant