Vision Pro spatial tracker with surround environment#23
Open
RonTuretzky wants to merge 8 commits intomainfrom
Open
Vision Pro spatial tracker with surround environment#23RonTuretzky wants to merge 8 commits intomainfrom
RonTuretzky wants to merge 8 commits intomainfrom
Conversation
Port the Conductor Tracker 3D visualization for Apple Vision Pro. Renders the ThreeJS scene as a surround environment with repos on a sphere shell around the viewer. Runs in a Safari window (shared space) so other apps stay visible, with opt-in immersive mode available. Includes nginx config for local HTTPS serving (required by WebXR).
Reworked the 3D tracker to place the camera inside the node graph looking outward (surround mode), with repos on a Fibonacci sphere shell. Added auto-orbit, layout toggle, and made immersive VR opt-in so Vision Pro users can keep other windows open. Wrote a full spec for a native visionOS RealityKit app that uses ImmersiveSpace with mixed immersion to render the tracker as a true spatial environment.
- Port full HUD from original tracker: status panel (working/idle/error from session_statuses), legend with gradient and CI badges, toolbar buttons (zen, fullscreen, orbit, layout, fit), footer with worktree count and session timer, cursor-following tooltip - Add nginx reverse proxy for /api/ -> localhost:8765 so Vision Pro only needs one HTTPS port - Fix status counts to use session_statuses instead of CI status - Add /api/tracker as first data source URL (same-origin via proxy)
- Render commit avatars along connection lines between repos and PRs using circular avatar sprites with texture caching - Add 5-second auto-refresh polling to keep data in sync with Conductor (only rebuilds scene when data changes) - Commits are hoverable (shows message, author, sha) and clickable (opens commit on GitHub)
- Add backtick-toggled hide/show menu for repos (A-Z) and workspaces (a-z), with click support and 0 to show all - Zen mode now shows minimal working count badge in top-right - Lock onto live API source after first successful fetch to prevent flipping between Conductor and static BreadCoop data - Increase fetch timeout from 3s to 10s for reliability - Filter hidden repos/workspaces from scene building
- Keep API source lock on transient failures instead of clearing it and falling back to static BreadCoop data - Remove data/org_data.json from fallback URLs entirely - Make tracker server threaded (ThreadingTCPServer) so concurrent requests don't block and cause timeouts
- Add WebSocket broadcaster to tracker_server.py that polls TrackerState every 3s and pushes to clients only on changes - Client connects via wss:// through nginx proxy, falls back to direct ws://localhost:8766, then HTTP polling as last resort - Nginx config proxies /ws/ to WebSocket server on port 8766 - Supports refresh_ci action over WebSocket - Graceful reconnect with automatic fallback chain
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
tracker3d-visionpro.html) that renders the Conductor organization graph as a spatial environment — repos placed on a Fibonacci sphere shell around the viewer with PR nodes branching outwardSPEC-visionos-tracker.md— full spec for a native visionOS RealityKit app usingImmersiveSpacewith.mixedimmersion to render the tracker as a true spatial environmentTest plan
https://localhost:8443/tracker3d-visionpro.htmlafter running.nginx/setup.shand verify surround layout rendershttps://<mac-ip>:8443/...)SPEC-visionos-tracker.mdfor native app feasibility🤖 Generated with Claude Code