FPV viewer: post clarifications, restyled figures, and viewer fixes (consolidated)#83
Merged
Merged
Conversation
…onest caveats - Reframe the annotation section around extracting the flight segments; drop the propaganda framing entirely (post + figure docstring). - Simplify the intro: the viewer exists to make the dataset accessible to the community, without the storage/technical details. - Add caveats: some annotations are auto-generated and not yet manually reviewed; not all 3-D scenes are extracted yet and some are rough — both will be gradually added and improved. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01YVLz2Gms21jzv8S6NE1XaT
- Restyle the two breakdown charts (annotated-clip timeline + footage breakdown): rounded segments with gaps on isotropic inch-based axes, narrative callouts (banner / freeze at impact / replay), a signal-vs- edit bracket, and a value row that labels every segment type including the slivers that previously overflowed or went unlabeled. - Merge consecutive same-type segment markers so spans measure correctly (fixes a doubled banner_start reading as a 0-second banner). - Lighten the pause/freeze color to #5b6675 for >=3:1 contrast on black (checked with a palette validator). - tool_flow: replace the illustrative point-cloud glyph with a real screenshot of the Biranit scene viewer, retitle the panel 'Debrief the strike'. - Reframe 'fly the strike' language around debriefing: new section title, intro wording, and a paragraph on replaying and learning from a strike after the fact. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01YVLz2Gms21jzv8S6NE1XaT
…framing - New paragraph + schematic (scene_pipeline.png) walking the reconstruction pipeline: raw clip -> annotations extract the flight -> enhance/equalize frames -> select the attack run -> model recovers camera path + point cloud. - Expand the 3-D caveats into an upfront challenges paragraph: compressed source footage yields noisy geometry, the model sometimes maps the sky (stray-point haze), smoke around impact, and unreviewed auto annotations propagating downstream. - Rename 'Debrief the strike' to 'Explore the strike' in the section title, body copy, alt text, and the tool_flow panel. - research README: document the new figure, the real capture in tool_flow, and the pillow dependency. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01YVLz2Gms21jzv8S6NE1XaT
- Challenges: add that the reconstruction is scale-ambiguous — a small near object and a large far one project to the same pixels, so the model recovers shape but not size. Anchoring one known real-world size in the 3-D scene scales the whole model and makes heights, distances and speeds real. - New concept figure scale_ambiguity.png (view cone, two houses filling the same view, known-size door annotation); documented in the script docstring and research README. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01YVLz2Gms21jzv8S6NE1XaT
The measure button caused horizontal overflow and had no size-reference dialog when selecting points; the fullscreen button didn't work. Both React elements are replaced with null in the built SceneView chunk (surgical patch of the bundled app; the real removal belongs upstream in fpv-drone-strikes-lebanon-dataset when the viewer is next rebuilt). Verified headlessly: gallery and scene routes render with no JS errors. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01YVLz2Gms21jzv8S6NE1XaT
The post and the tool_flow panel described the measure tool as live; with the button removed for now, describe it as held back until scenes are anchored to real-world scale (which ties into the scale-ambiguity challenge already in the post). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01YVLz2Gms21jzv8S6NE1XaT
The search input had no autocomplete attribute, so browsers offered their autofill/history dropdown over it. Adds autocomplete=off (plus autocorrect=off / spellcheck=false) to the input in the built bundle; verified in the rendered DOM headlessly. Upstream fix belongs in fpv-drone-strikes-lebanon-dataset alongside the button removals. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01YVLz2Gms21jzv8S6NE1XaT
…k screen The <video> element had no poster attribute, so before metadata loaded (or if playback never started) the player was just a black box. Wraps the video in a .video-stage container, sets poster=thumbnailUrl (same field the gallery cards already use), and adds a centered play-button overlay (reusing the existing play/pause handler) that's shown only while paused and disappears once playback starts. Verified headlessly: rendered DOM shows the poster attribute pointing at the real CDN thumbnail and the overlay button positioned over the video; JS passes node --check. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01YVLz2Gms21jzv8S6NE1XaT
autocomplete=off alone wasn't enough — with no name attribute, iOS/Chrome fall back to heuristics on the placeholder/aria-label text and still offer autofill. Adds name="site-search-query" (long and specific, per Apple's own guidance, so it isn't mistaken for a contact-form field like name="q" would be). Verified in the rendered DOM headlessly. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01YVLz2Gms21jzv8S6NE1XaT
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This was referenced Jul 5, 2026
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.
Consolidates the still-open tail of the FPV chain (#79 and #81) into one PR against
master, so there's a single thing to review/merge instead of a multi-hop chain.masteralready has #78 (the initial viewer embed), and #80/#82 are already merged into the now-supersededclaude/blog-post-clarifications-yvwp30branch — all of that content is included here too, rebased cleanly onto currentmaster(verified the trees were identical before replaying).Once this merges, #79 and #81 can be closed (their content is fully included here) and their branches deleted.
Post content (previously #79)
scene_pipeline.png): raw clip → extract flight → enhance frames → select the attack run → recover camera path + point cloud.scale_ambiguity.png): why a monocular reconstruction can't know its own real-world scale, and what anchors it.annotated_clip.png,footage_breakdown.png): rounded segments with gaps, narrative callouts, a flight-vs-edit bracket, full value labeling — all still computed from the real dataset snapshot.tool_flow.png's 3-D panel now uses a real screenshot of the scene viewer instead of an illustrative point cloud.Viewer fixes (previously #80/#81/#82, all patches to the built bundle — durable fix belongs upstream in
fpv-drone-strikes-lebanon-dataset)autocomplete="off",autocorrect="off",spellcheck="false", andname="site-search-query"(a long, specific name so iOS doesn't misclassify the field).<video>now hasposter={thumbnailUrl}and a centered play-button overlay, replacing the black screen that showed before playback started.Verified headlessly (served
public/and rendered with headless Chromium) that all four fixes hold together in this rebased branch: the search input carriesname="site-search-query"+ the autofill attributes, the video page's DOM shows the poster URL and play overlay, and the scene page has nomeasure-btn/fullscreen-btnmarkup.🤖 Generated with Claude Code
https://claude.ai/code/session_01YVLz2Gms21jzv8S6NE1XaT
Generated by Claude Code