Repository navigation
Conference demo flow (/?demo) + truthful gate label from run_metrics - #27
Merged
Merged
Conversation
…-backed inspector scene.json's frozen geometry_source cannot tell kept from completed, so the inspector labelled every PatchComplete-completed object "keep · fused tsdf". The server now serves the scene dir's run_metrics.json (same absent-is-200 contract as eval.json, root and job-scoped, documented in openapi.yaml) and the inspector reads route, coverage and completeness from it; without telemetry it falls back to "measured · tsdf". Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01T4fWTqvtzrSuC3ZmHemmA6
… then the viewer Client-side only. The file is described, never uploaded; the staged screens show the numbers the recorded run wrote to run_metrics.json, advance only when the presenter does, and carry a permanent "staged replay, nothing is computed live" banner. The viewer is not mounted before the reveal; "/" stays the plain viewer. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01T4fWTqvtzrSuC3ZmHemmA6
…terial/route, reset Viewer gains setAutoOrbit, focusObject (eased), setTints and resetObjects, all behind store actions. Presentation mode scales the rem-based tokens from one root attribute and swaps the panels for a large-type story card that keeps the "recorded run" label and the "8 of 12 objects" curation on screen. serve.py rejects a --scene path that is not a directory. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01T4fWTqvtzrSuC3ZmHemmA6
…pinned nav, safe centring A fixed 150% root zoom overflowed a laptop at 150% display scaling (1280x670 viewport): cards covered the banner and the Next button left the screen. The scale is now clamp(16px, min(1.5vw, 2.67vh), 32px), the staged screens scroll inside a safely-centred area, and the navigation bar is always visible. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01T4fWTqvtzrSuC3ZmHemmA6
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.
Upload → presenter-paced staged replay of the recorded office_3 run → viewer in presentation mode. Client-side only; nothing is uploaded or computed live, and the screens say so.
GET /run_metrics.json(root + job-scoped, OpenAPI documented, tests). The inspector now shows the real gate route (it called every PatchComplete-completed object "keep · fused tsdf"); schema untouched./?demo: upload screen, staged replay with the run's recorded numbers and a permanent "staged replay" banner, reveal with story card, tour (→/←), colour by material / route (c), orbit (o), reset (r), presentation toggle (p)./is unchanged.setAutoOrbit,focusObject,setTints,resetObjectsvia store actions only.window.__soba, pinned versions and physics semantics unchanged.serve.pyerrors on a--scenethat is not a directory.Checks: pytest 541 passed / 8 skipped / 1 failed (gpu-marked torch test, expected on the WSL box);
npm run buildclean withdist/rebuilt;verify_browser.jspasses onout/scene_testand the curated scene; scratch puppeteer walk of/?democlean (no non-GET requests, reset restores poses). Not tried on a projector. Details and presenter notes:docs/log/2026-09-17-demo-flow.md.🤖 Generated with Claude Code
https://claude.ai/code/session_01T4fWTqvtzrSuC3ZmHemmA6