Skip to content

Commit ff67b43

Browse files
committed
docs(exclusions): cut the copy down to one line each
Retitles the admin card to "Remove Spend Tracking" and replaces the paragraph under each heading with a single plain sentence. Same rename and trim in DOCS.md, plus a pointer to where the card lives in the dashboard. The two behaviours worth knowing are kept as a short note under the options, because both are things an operator hits in practice: `add model` matches the spelling trials actually store, and a model nothing has run on is rejected rather than saved as an entry that matches nothing. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017zmdrcCqnkVM6hWjhPu2T9
1 parent 8b892c9 commit ff67b43

3 files changed

Lines changed: 29 additions & 38 deletions

File tree

DOCS.md

Lines changed: 21 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ export ODDISH_API_KEY="ok_..."
2626
- `oddish cancel` - stop in-flight task runs or task-level QA jobs
2727
- `oddish backfill-analysis` - (re)run trial analysis for a trial, task, or experiment
2828
- `oddish costs` - view billable-spend accounting (org-wide, or per-user with `--user`)
29-
- `oddish cost-exclusions` - manage the models and experiments whose spend doesn't count
29+
- `oddish cost-exclusions` - hide spend for models and experiments that were never really paid for
3030
- `oddish pull` - download logs and artifacts
3131
- `oddish combine` - merge several experiments into a new one
3232
- `oddish collect` - gather trials from tasks/trial IDs into a shareable read-only collection
@@ -435,38 +435,34 @@ Options
435435
- `--api TEXT` - Override the API URL
436436
- `--json` - Emit the raw cost breakdown JSON
437437

438-
## Spend That Doesn't Count
438+
## Remove Spend Tracking
439439

440-
Some spend Oddish records was never actually paid for: provider-sponsored
441-
capacity, free preview tiers, vendor credits, a bake-off someone comped.
442-
Operators mark it with `oddish cost-exclusions`, along two axes:
440+
Hide spend that was never really paid for - sponsored capacity, free preview
441+
tiers, vendor credits, a comped run. Excluded spend drops off the admin cost
442+
dashboards and stops counting against quotas. It is still shown on experiment,
443+
task, and trial pages, marked as not real, so the two never disagree silently.
443444

444-
- **Models** - every trial that ever ran on the model stops counting, because
445-
the reason its spend isn't real is a property of the model.
446-
- **Experiments** - only trials the experiment ran *itself* stop counting.
447-
Trials it merely gathered from elsewhere keep counting on the experiment that
448-
actually spent the money.
445+
- **Models** - every trial that used the model stops counting.
446+
- **Experiments** - trials the experiment ran itself stop counting. Trials it
447+
gathered from elsewhere keep counting on the experiment that ran them.
449448

450-
Excluded spend is dropped from the admin cost dashboards and from quota
451-
enforcement. It is **not** hidden: experiment, task, and trial pages still show
452-
the money, marked as not real, so the two surfaces never disagree silently.
453-
454-
Both lists are deployment-wide and apply retroactively - adding an entry removes
455-
spend already recorded, and removing one restores every dollar. Operator-only on
456-
hosted Oddish (a full-scope API key belonging to the operator org); not
457-
available on a self-hosted core server.
449+
Both lists are deployment-wide and retroactive: adding an entry removes spend
450+
already recorded, removing one puts every dollar back. Operator-only on hosted
451+
Oddish (a full-scope API key in the operator org); not available on a
452+
self-hosted core server. Also editable in the admin dashboard under
453+
Costs -> Remove Spend Tracking.
458454

459455
```bash
460456
# What currently doesn't count
461457
oddish cost-exclusions list
462458
oddish cost-exclusions list --kind model --json
463459
464460
# Stop counting a free model, and a comped experiment
465-
oddish cost-exclusions add model xai/grok-4 --label "sponsored"
461+
oddish cost-exclusions add model kimi-k2 --label "sponsored"
466462
oddish cost-exclusions add experiment "glm sweep" --label "comped"
467463
468464
# Put the spend back (by row id, model name, or experiment name/id)
469-
oddish cost-exclusions remove model xai/grok-4
465+
oddish cost-exclusions remove model kimi-k2
470466
oddish cost-exclusions remove experiment exp_01j...
471467
```
472468

@@ -477,8 +473,11 @@ Options
477473
- `--api TEXT` - Override the API URL
478474
- `--json` - Emit raw JSON
479475

480-
An experiment can be named or referenced by id. Names are not unique, so an
481-
ambiguous name is rejected rather than resolved to a guess - pass the id.
476+
`add model` matches what trials actually store, so `kimi-k2` finds trials saved
477+
as `moonshot/kimi-k2`. A model no trial has ever used is rejected rather than
478+
saved as an entry that matches nothing. Experiments take a name or an id;
479+
ambiguous names are rejected, and a collection is rejected because it runs no
480+
trials of its own.
482481

483482
## Download Outputs
484483

frontend/src/components/cost-exclusions-card.tsx

Lines changed: 7 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -159,30 +159,24 @@ export function CostExclusionsCard() {
159159
return (
160160
<Card>
161161
<CardHeader>
162-
<CardTitle className="text-base">
163-
Spend that doesn&apos;t count
164-
</CardTitle>
162+
<CardTitle className="text-base">Remove Spend Tracking</CardTitle>
165163
<p className="text-muted-foreground text-sm">
166-
Spend on these models and experiments is ignored by cost accounting:
167-
the admin cost dashboards above and quota enforcement. Experiment,
168-
task, and trial pages still show the money, marked as not real. Both
169-
lists are deployment-wide and apply retroactively — adding an entry
170-
removes spend already recorded, and removing one restores it.
164+
Spend listed here is hidden from the cost dashboards and does not
165+
count against quotas.
171166
</p>
172167
</CardHeader>
173168
<CardContent className="space-y-6">
174169
<section className="space-y-2">
175170
<h3 className="text-sm font-medium">Models</h3>
176171
<p className="text-muted-foreground text-sm">
177-
Every trial that ever ran on the model stops counting — for
178-
sponsored capacity, free preview tiers, and vendor credits.
172+
Every trial that used this model stops counting.
179173
</p>
180174
<ExclusionList<ExcludedModel>
181175
endpoint="/api/admin/cost-excluded-models"
182176
field="model_name"
183177
placeholder="Model id, e.g. xai/grok-4"
184178
addLabel="Exclude model"
185-
emptyLabel="No models are excluded from cost."
179+
emptyLabel="No models excluded."
186180
primary={(row) => row.model_name}
187181
secondary={() => null}
188182
/>
@@ -191,16 +185,14 @@ export function CostExclusionsCard() {
191185
<section className="space-y-2">
192186
<h3 className="text-sm font-medium">Experiments</h3>
193187
<p className="text-muted-foreground text-sm">
194-
Only trials the experiment ran itself stop counting. Trials it
195-
merely gathered from elsewhere keep counting on the experiment that
196-
actually spent the money. Add one by name or id.
188+
Trials this experiment ran itself stop counting.
197189
</p>
198190
<ExclusionList<ExcludedExperiment>
199191
endpoint="/api/admin/cost-excluded-experiments"
200192
field="experiment"
201193
placeholder="Experiment name or id"
202194
addLabel="Exclude experiment"
203-
emptyLabel="No experiments are excluded from cost."
195+
emptyLabel="No experiments excluded."
204196
primary={(row) => row.experiment_name || row.experiment_id}
205197
secondary={(row) => row.experiment_id}
206198
/>

oddish/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ reference. The main commands are:
6565
- `oddish ls` / `oddish status` — browse tasks (including model and trajectory-metric filters) and inspect progress. `oddish status <trial_id>` shows single-trial detail; `--detail`/`--versions` show a task's version history and cost rollups; `--queue` shows queue & worker scheduler diagnostics.
6666
- `oddish logs` — stream a running trial's live transcript and cost estimate (`--follow` to poll until it ends); finished trials are served by `oddish pull` instead.
6767
- `oddish costs` — billable-spend accounting (org-wide, or per-user with `--user`).
68-
- `oddish cost-exclusions`operator list of models and experiments whose spend doesn't count.
68+
- `oddish cost-exclusions`hide spend for models and experiments that were never really paid for.
6969
- `oddish cancel` — cancel active runs or task-level QA.
7070
- `oddish pull` — download logs, results, trajectories, and artifacts; `--debug-files` lists a trial's raw S3 inventory instead.
7171
- `oddish combine` — merge finished trials from multiple experiments.

0 commit comments

Comments
 (0)