8 Commits
Author SHA1 Message Date
HakumaguroandClaude Sonnet 5 850f8fc6eb Version 0.2.3
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-28 16:40:48 +09:00
HakumaguroandClaude Opus 5.5 1f31e0cc1a Follow-up review fixes: config relationship checks, retry failed config reads, analyzer uses configured deadband
- ModuleConfig.Validate: maxFloor + minRange <= 1, minCeil > 0; LidCal clamp bound can no longer exceed 1
- ReloadConfig: record the timestamp only after a successful load so a temporarily locked file is retried
- tune.py analyze: map with lid.deadband / wink.assistClosed from the installed config; STEAMFRAME_CONFIG override

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-27 23:50:47 +09:00
HakumaguroandClaude Opus 5.5 f5ec1458fe Review fixes: safer calibration and config, neutral eyes without data, pinned frameeyeosc (0.2.2)
- tune.py: reject reversed/flat per-eye ranges and keep the previous config; recommend wink assist;
  readiness check before recording; skip malformed trace lines
- module: invalid steamframe-config.json is not applied (last good config kept, configError reported);
  neutral eyes when no source is fresh; trace written with invariant culture
- setup: sandbox mode leaves real SteamVR settings and firewall alone; block rules handled separately;
  headset target only counts connected adapters
- headset-setup.sh: build a pinned, reviewed frameeyeosc revision and move existing checkouts to it

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-27 21:37:01 +09:00
HakumaguroandClaude Opus 5.5 9d1bc40adc Fix VRCFT Module Registry crash: write a complete module.json (0.2.1)
VRCFaceTracking's Module Registry page crashes the app (WinUI 0xc000027b) when an
installed module's module.json has no DownloadUrl/ModulePageUrl. Reproduced with UI
Automation and confirmed by removing/restoring only those two fields.

- common.ps1: Write-ModuleJson writes every field, no BOM
- setup.ps1: repairs an incomplete or outdated module.json on existing installs
- version 0.2.1; README troubleshooting row; CLAUDE.md pitfall

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-27 20:00:08 +09:00
HakumaguroandClaude Opus 5.5 72da13354e One-step setup, spoken status check, menu, release packaging
- module: works if only one of UDP 9015/9020 can be opened; logs state changes only (capped);
  trace is opt-in; writes a status file; reports when another module owns eye tracking
- scripts/setup.ps1: idempotent installer with dry run, uninstall and optional headset setup
- scripts/doctor.ps1: health check with a spoken summary
- Start Here.cmd menu; tune.py calibrate (spoken, one step); package.ps1 release zip
- README: quick start and troubleshooting first

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-27 16:41:26 +09:00
HakumaguroandClaude Sonnet 5 3c6654736e Blink glitch rule, wink assist and analyzer updates
- blink.saturatedRaw: a closed lid with the other pinned at its ceiling is a blink, however long
- wink.assist: show the other eye open when it stays above its floor while one eye is closed
- tune.py analyze understands the ceiling signature and caps holdMs

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-26 11:14:32 +09:00
HakumaguroandClaude Sonnet 5 89c2235669 Blink coupling for lopsided tracker blinks, analyzer blink detection, CLAUDE.md
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-26 10:52:50 +09:00
HakumaguroandClaude Sonnet 5 b8d92e23f7 Steam Frame eye tracking module for VRCFT, tuning tool and setup scripts
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-26 10:39:16 +09:00