# Outbox — yam_sim

Write progress, results, and cross-agent messages here.

---

## 2026-07-09 — Migration manifest for Saturday phe→VPS (per manager request)

### 0. TL;DR
My post-outage canonical code is ALREADY a git repo on the fleet box (`~/code/yam_sim`, 12 commits) — migrate by adding a remote + push, not rsync. The phe copies below are the banana-era pipeline (pre-outage): still valuable, needs path fixes if moved.

### 1. Confirming yams's list — all correctly mine
- `raiden_fork/third_party/exo_redo/Demos/{sim_yam.py, sim_yam_bimanual.py, exo_img_bimanual_yam.py, render_bimanual_views.py}` ✓ mine
- `robot_models/i2rt_yam_fidex/` (MJCF + meshes + variants + finray XMLs) ✓ mine — NOTE: puget has a full copy at `~/yam_para/raiden_fork/third_party/exo_redo/robot_models/i2rt_yam_fidex/` which is what post-outage sim runs against
- `ExoConfigs/*`, `exo_utils.py` ✓ shared with yam_calib (they own aruco-estimation internals; I own the MuJoCo-composition usage) — suggest these land in yams's proposed `yam-shared` repo
- MuJoCo composition sections of `docs/fiducial_exoskeleton_board.md` ✓ mine
- `/data/cameron/para/robot/yam/sim_assets/` ✓ mine (YCB banana + plate + CoACD decomposition in `objects/ycb/011_banana/google_16k/coacd/`)

### 2. My canonical files
**A. Fleet-box git repo (post-outage canonical — MIGRATE THIS):**
`~/code/yam_sim/sim_cube/`: cameras.py, task_core.py, run_all_tasks.py, gen_dataset_v1.py, dataset_v1_viz.py, perturb_grid.py, plate_size_compare.py, cube_task.py, replay_episode.py, scene XMLs. Needs: `git remote add` + push (no remote yet — ask Cameron which GitHub).

**B. phe108, pre-outage pipeline (rsync candidates):**
- `/data/cameron/para/robot/yam/sim_pickplace/` — procedural.py, batch.py, sim_record.py, gen_dataset.py, domain_random.py, eval_policy.py, full_task_viz.py, full_annotated_task.py, annotated_grasp_viz.py, grasp_viz*.py, ggcnn_grasp.py, float_task.py, viewpoint_grid.py, gen_dataset_float.py, scene/*.xml, annotations/grasp_annotation.yaml, README.md (artifacts/ = regenerable videos, skip)
- `/data/cameron/para/robot/yam/sim_assets/objects/ycb/` — keep with the code or in LFS; the CoACD parts are irreplaceable-ish (10 min to regenerate)
- `/data/cameron/vault/para/yam/simulation.md`
- `/data/cameron/scratch_files/yam_sim_transfer/` — Mac annotation bundle (self-contained, relative paths, portable as-is)

**C. Puget-local (data + exec copies — NOT part of code migration):**
`~/yam_para/sim_cube/` (exec copies), `~/yam_para/sim_datasets/cube_pickplace_v1/` (15 GB, 64 eps × 36 views), `~/yam_para/sim_outputs/`, `~/public_videos/` (served via videos.omidlab.net → puget:8791)

### 3. Hardcoded paths that break on rsync
- **All B-list scripts**: `/home/cameronsmith/lab/...` throughout (= puget's sshfs view of phe) — break anywhere except puget-with-phe-mount. `scene/pickplace.xml` + `yam_nokey.xml` also carry absolute mesh paths in that form.
- **A-list repo code**: intentionally puget-local paths — `/home/cameronsmith/yam_para/...` (YAM model copy, calibration JSON, outputs) and `cameras.py: CAL_JSON → ~/yam_para/data/pickplace_redo_slow/0000/calibration_results.json`. Safe as long as execution stays on puget; parameterize env-var style if that changes.
- **puget crontab** references `~/fleet_code` (RO sshfs of fleet `~/code`) + the RangeHTTPServer @reboot line.

### 4. Secrets check
Nothing secret in any of my files (scene XMLs, sim code, YCB assets, grasp annotation). Echoing yams's list — none of it applies to my tree. Safe to push all of A+B to a private GitHub.

### 5. Heads-up
yukon is still down (hard-wedged, needs physical power cycle — Cameron knows). Its local copies (yam_local_record/deploy, recordings, eval_videos) are untouched by this migration but un-backed-up until it returns.

— yam_sim
