← castformCONTENT HISTORYWHAT CHANGED · RULE-BASED ANALYSIS
Update to castform
Snapshot Sep 30, 2026 · 23:14 UTC · version 1.0.0+codex.20260818184934
Collection source: not recorded for this historical snapshot.
First saved snapshot
No earlier snapshot is available to establish a change.
Compare saved observations
Download comparison JSONFull technical diff · 0 changed fields
Full snapshot data
{
"description": "Review, bundle, upload, and explicitly launch a Castform GPU training run from the project script.",
"included_files": [],
"name": "launch-run",
"skill_md_contents": "---\nname: launch-run\ndescription: Review, bundle, upload, and explicitly launch a Castform GPU training run from the project script.\n---\n\n# Launch a run\n\nUse this only after **verify-environment** reports a believable green baseline.\nLaunching spends GPU credits. The workflow lives in `main.py`, not a CLI launch\ncommand:\n\n```bash\nuv run python main.py launch\n```\n\nDo not pass `--yes` unless the user has already explicitly authorized the cost.\nNever launch after `validate_environment` reports a static or runtime sampling\nor history-contract error. Review output-cap warnings (`max_tokens` or\n`max_completion_tokens`) and confirm any effective clamp is intentional.\n\n## Required ordering\n\nAccept user configuration as explicit `main.py` arguments, normalize it once in\n`_constructor_args(args)`, and reuse that dictionary for local construction and\n`dump_bundle`. Avoid ambient `os.environ` reads in environments, tools, rewards,\nand harness configuration.\n\nRead the script and confirm that the launch action does all of the following\nin order:\n\n1. builds one `Bundle` with `dump_bundle`;\n2. passes that exact object to `upload_assets(bundle=bundle, ...)`;\n3. validates the uploaded assets (locally and in the hosted sandbox) and stops\n on failure;\n4. asks the human to confirm a credit-spending GPU launch;\n5. passes the same uploaded paths to `TrainerClient.launch_training_run` — the\n run trains on precisely what was validated.\n\nThe upload helper must not silently rebundle the environment, and launch must\nnot re-upload.\n\nDataset upload is explicit and optional. Supply `train_dataset` and/or\n`eval_dataset` only for splits Castform should upload. Omit them for data resolved\nby the environment at runtime (for example Harbor- or Git-managed data). Do not\nuse an empty list as an omission sentinel: it uploads an empty JSONL file.\n\n## Dependencies\n\n`RUNTIME_DEPENDENCIES` is explicit and authoritative for the remote rollout\nruntime:\n\n```python\nbundle = dump_bundle(\n CustomEnv,\n constructor_args=constructor_args,\n pip_dependencies=RUNTIME_DEPENDENCIES,\n)\n```\n\nList every external package imported while the environment, tools or rewards run.\nDo not copy the whole project dependency list automatically: data-preparation and\ndevelopment packages may not belong in the rollout image. benchmax captures local\nmodules under the environment project automatically. Source from another project\nmust be explicit: use `local_modules=` to capture it, or list its installed\ndistribution in `pip_dependencies` to keep it as a remote reference.\n\nFor Harbor, add the selected provider extra explicitly, such as\n`harbor[modal]>=0.18,<0.19` or `harbor[daytona]>=0.18,<0.19`.\n\n## Launch configuration\n\nReview `LAUNCH_CONFIG` in source. In particular:\n\n- `max_context_tokens` is the whole-rollout prompt-plus-response token budget;\n- keep trainer turn/tool limits compatible with the environment's own limits;\n- start with modest epochs and judge the eval curve, not only train reward;\n- use `TrainerClient.list_launch_args()` when you need the live accepted schema\n instead of guessing an argument name.\n\n<!-- rag:start -->\nFor search environments, budget for repeated tool output across turns. Confirm\nthe rollout bundle includes the runtime search client but not large local corpus-\npreparation dependencies unless the environment imports them.\n<!-- rag:end -->\n\n## Credentials\n\nUse `InjectedAuth` for model and judge calls through the Castform LLM endpoint so the hosted runtime supplies the current Castform credential. User-managed external endpoints use explicit `StaticBearerAuth`. Harbor sandbox credentials are currently explicit constructor inputs. Review static credentials before bundling and limit their scope.\n\n## Handoff\n\nRecord the run ID printed by the script, then load **view-progress**. If upload or\nlaunch fails, preserve the error, correct the script or credentials, and rerun the\nsmallest failed stage. Never bypass a failed validation gate.\n"
}SHA-256 of public snapshot: 749f7b7a3f075e9ebde4f8cbbfff17e277bc3100852b8a68396744803f04fc71