Skip to content

Declare the MSG gripper's built-in camera mount - #28

Open
Jepson2k wants to merge 6 commits into
mainfrom
claude/eye-hand-calibration-waldo-nrb1sf
Open

Declare the MSG gripper's built-in camera mount#28
Jepson2k wants to merge 6 commits into
mainfrom
claude/eye-hand-calibration-waldo-nrb1sf

Conversation

@Jepson2k

Copy link
Copy Markdown
Collaborator

The MSG gripper carries an integrated camera mount, so its ToolConfig now ships a default CameraSpec. The video device stays per-machine: the spec's no-camera sentinel is resolved through the tool's runtime camera override, and frontends can use the declaration to surface the mount — e.g. the hand-eye calibration panel in Waldo-Commander (Jepson2k/Waldo-Commander#29), which this change supports.

🤖 Generated with Claude Code

https://claude.ai/code/session_01EdLG1uiKKZJ6aAeiojeRwd

claude and others added 2 commits July 25, 2026 12:26
The MSG carries an integrated camera mount, so its ToolConfig now ships
a default CameraSpec. The video device stays per-machine: the spec's
no-camera sentinel is resolved through the tool's runtime camera
override, and frontends can use the declaration to surface the mount
(e.g. hand-eye calibration guidance).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015HkPS4EgPZg7tvgCxBYqTT
The settle phase completed a segment after a fixed 20-tick cap even with
the firmware still closing on the target, and the mock transport freezes
all residual motion once the command stream goes idle — on a starved
host the simulated plant falls behind the waypoint stream, the cap
fires, and the robot is reported complete while stranded short of the
target (waldo-commander's hand-eye CI observed home "complete" with J1
29 deg from standby). Settling now resets the tick counter whenever the
position error shrinks, so the cap only fires after 20 ticks without
progress — preserving the anti-hang escape for real hardware's
steady-state residual — and an unconverged completion logs the residual
instead of passing silently.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EdLG1uiKKZJ6aAeiojeRwd
Jepson2k and others added 4 commits August 6, 2026 14:52
scipy-stubs 1.18 types bc_type derivative values as array-likes only,
while scipy requires scalars for 1-D y. ty narrows a bare-declared Any
on assignment, so the tuple branch failed overload resolution; an
annotated assignment keeps bc at its declared Any.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LkVPPMQg33tFuGCVLkyrJQ
ty 0.0.69 resolves ndarray.tolist() without the ty-specific suppression
and infers the frame memoryview union directly; it now warns on both
leftovers, and warnings fail the lint hook.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LkVPPMQg33tFuGCVLkyrJQ
Unpinned stub releases have broken the ty lint hook twice; ty itself
stays unpinned deliberately while it is still in beta.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LkVPPMQg33tFuGCVLkyrJQ
scipy-stubs 1.18.x requires Python >=3.12, so a single exact pin is
uninstallable on the 3.11 CI jobs; 3.11 pins the last 1.17 release.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LkVPPMQg33tFuGCVLkyrJQ
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants