chore: clean hydrotech-beam syncthing conflicts and add new docs

- Remove all .sync-conflict-* files
- Remove temp _temp_part_properties.json files
- Add USER_GUIDE.md
- Add dashboard docs (Executive, Technical, Operations, Master Plan)
- Add playbooks (DOE, NX_REAL_RUN, SYNCTHING_RECOVERY)
- Update iteration results

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-16 12:11:16 -05:00
parent 6218355dbf
commit ed6874092f
105 changed files with 789 additions and 371 deletions

View File

@@ -0,0 +1,39 @@
# Playbook — DOE (Phase 1 Landscape)
## Scope
Design of Experiments for Hydrotech Beam: baseline + LHS samples to map design space.
## Standard flow
1. Prepare clean state (archive previous results if needed)
2. Run DOE with explicit backend
3. Validate outputs
4. Evaluate gate criteria
5. Decide next phase (rerun bounds/constraints or move to TPE)
## Commands
### Real engineering DOE
```powershell
python .\run_doe.py --backend nxopen --model-dir "<PATH_TO_NX_MODELS>" --clean --study-name hydrotech_beam_doe_phase1_real
```
### Debug DOE only (synthetic)
```powershell
python .\run_doe.py --backend stub --clean --study-name hydrotech_beam_doe_phase1_stub
```
## Interpretation checklist
- `geo_infeasible` high: geometry bounds/checks may be too broad or too strict
- `fully_feasible = 0`: constraints may be too strict for current design space
- Very low runtime and suspiciously smooth outputs: likely stub execution
## Decision branch
- If gate passed: proceed to TPE seeded by feasible points
- If gate failed:
- adjust constraints and/or DV bounds
- rerun clean DOE
## Documentation requirement
After each DOE run, update:
- run record
- decision and rationale
- next action owner

View File

@@ -0,0 +1,38 @@
# Playbook — NX Real Run (Hydrotech Beam)
## Objective
Run a **real** DOE using NX/Simcenter (not stub), with clean artifacts and traceability.
## Pre-Run Checklist
- [ ] In study folder: `...\studies\01_doe_landscape`
- [ ] Model directory contains expected `.sim`, `.fem`, `.prt`
- [ ] Syncthing healthy on both ends (no major errors)
- [ ] No unintended `*.sync-conflict-*` in active results root
- [ ] Command prepared with explicit `--backend nxopen`
## Recommended command
```powershell
python .\run_doe.py --backend nxopen --model-dir "<PATH_TO_NX_MODELS>" --clean --study-name hydrotech_beam_doe_phase1_real
```
## During run — sanity checks
- Runtime per solved trial should be non-trivial (not near-zero for all trials).
- Log should indicate NX solve flow, not stub messages.
- Iteration outputs should be created.
## Post-run validation
1. Check `results/doe_summary.json`
2. Check `results/doe_results.csv`
3. Verify:
- trial count expected (typically 51 for baseline + 50 LHS)
- solved/failed counts make sense
- mass values are numeric for solved trials
- no obvious synthetic patterns indicating stub run
## Quality gate reminder
Phase 1 gate (current):
- ≥5 feasible points
- ≥80% solve success
## Mandatory logging
Record the run in project docs using the run log template from `USER_GUIDE.md`.

View File

@@ -0,0 +1,38 @@
# Playbook — Syncthing Recovery (Hydrotech Beam)
## Symptoms
- Latest run not visible on other side
- Old timestamps persist remotely
- `*.sync-conflict-*` files appear in `results/`
## Recovery steps
1. Confirm both sides point to the same folder path
2. Rescan folder in Syncthing GUI
3. Pause/resume folder if stale
4. Restart Syncthing if needed
5. Archive conflicts from active results root
## Conflict archive snippet (PowerShell)
```powershell
$ts = Get-Date -Format "yyyyMMdd_HHmmss"
$archive = ".\results\archive_conflicts_$ts"
New-Item -ItemType Directory -Path $archive -Force | Out-Null
Get-ChildItem .\results -File -Filter "*.sync-conflict-*" | Move-Item -Destination $archive
```
## Clean rerun prep snippet (PowerShell)
```powershell
$ts = Get-Date -Format "yyyyMMdd_HHmmss"
$old = ".\results\archive_before_clean_rerun_$ts"
New-Item -ItemType Directory -Path $old -Force | Out-Null
$toArchive = @("doe_results.csv","doe_summary.json","doe_run.log","history.csv","history.db","optuna_study.db")
foreach ($f in $toArchive) {
if (Test-Path ".\results\$f") { Move-Item ".\results\$f" $old }
}
```
## Verification
- Main `results/` has only current active artifacts
- Conflict files moved to archive folder
- Remote side sees same timestamps/files