docs: assembly-line walkthrough + README/vision update (closes #87) - #107
Open
dchaudhari7177 wants to merge 1 commit into
Open
docs: assembly-line walkthrough + README/vision update (closes #87)#107dchaudhari7177 wants to merge 1 commit into
dchaudhari7177 wants to merge 1 commit into
Conversation
…d#87) Adds docs/assembly-line.md covering the assembly-station scene end to end: the station geometry (entity table + camera positions/look-at/FOV), why the two cameras are aimed apart and what that does to per-entity in_view, the work-order ground truth in order.json, the --placement-synced preset and its two deliberate negatives, plus coverage and 3D-view inspection. README: the positioning paragraph now names both scenario shapes - non-overlapping coverage AND multi-station work-order / assembly-line - instead of only corridor MTMC, and a new "Assembly-line / work-order scenes" section carries the 3D-view asset and links the walkthrough. PARTIALLY BLOCKED, deliberately. The issue asks for the multi-station topology, the operator route, and station-completion mapped to work-order line-items. Those come from bamdadd#84/bamdadd#85, which are still open - only the single-station scene exists today. Documenting a station topology and operator route that aren't implemented would mean writing reproduce commands that cannot run, which the acceptance criteria explicitly forbid, so the page documents what ships and carries a Status note pointing at bamdadd#84/bamdadd#85 for the rest. Every command in the docs was executed verbatim from the repo root before committing, which caught two path errors: the example writes into examples/out/ (gitignored), not "next to this file" as its own docstring says, so the coverage and 3D-view commands needed examples/out/manifest.json rather than a bare manifest.json. All quoted output and numbers (in_view 11/11 vs 0/11, coverage 0.25 / 0.75, the three causal pairs against four placed items) are copied from real runs. Also regenerated docs/assets/assembly_station_scene_3d.png as the embedded 3D still. The existing coverage-panel asset is deliberately left untouched. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
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.
Closes #87.
Adds
docs/assembly-line.mdand updates the README's positioning.Scope note — part of this issue is blocked, and I did not paper over it
The issue asks for the multi-station topology, the operator route, and station-completion mapped to work-order line-items. Those come from #84 / #85, which are still open — the only scene that exists today is the single-station
examples/assembly_station.py.Documenting a station topology and operator route that aren't implemented would mean writing reproduce commands that cannot run, which this issue's acceptance criteria explicitly forbid. So the page documents what ships and opens with a Status note pointing at #84/#85 for the rest. I used the
docs/assembly-line.mdfilename you asked for so the page is already at its final home as the line scene lands. Happy to extend it in the same PR if you'd rather wait for #84/#85.What the walkthrough covers
CameraRig.stations(...).in_view 11/11on overview and0/11on worktop, the items exactly the reverse. Called out explicitly as not an occlusion story.order.json'sstatus/expected/placed/missing/extra/wrong, and thatactionsnames which joint placed what and when.--placement-synced— the hand dips and the two deliberate negatives, with the punchline stated plainly:interactions.jsonholds three causal pairs while four items get placed, andpart_dappears in none.README
docs/assets/assembly_station_scene_3d.png) and a link to the walkthrough, placed after the intro so the vision paragraph still leads.Verification
Every command in the docs was executed verbatim from the repo root before committing. That caught two path errors in my own first draft: the example writes into
examples/out/(gitignored), not "next to this file" as its own module docstring claims — socoverage_metrics.py manifest.jsonand the 3D-view command both neededexamples/out/manifest.json. All five documented commands now run:python examples/assembly_station.pypython examples/assembly_station.py --placement-syncedpython scripts/coverage_metrics.py examples/out/manifest.json... --panel docs/assets/assembly_station_coverage_metrics.pngpython scripts/view_scene_3d.py --manifest examples/out/manifest.json --out ...Every quoted output and number is copied from a real run (
in_view 11/11vs0/11; coverage0.25= 11/44 and0.75= 33/44, zero overlap/blind/handoff; the three causal pairs). All relative links resolve.Ran with
PYTHONPATH=src pythonrather thanuv run:uv runfails in this checkout becausepyproject.tomlreferences an editable../multicam-occlusionsibling that isn't present. The plainpythonform is what the example's own docstring documents; the docs noteuv runas the alternative.Two defects found in passing (not fixed here)
python examples/assembly_station.py --helpcrashes on Windows withUnicodeEncodeError: 'charmap' codec can't encode character 'δ'— the module docstring is passed to argparse asdescriptionand contains aδ, which a stock cp1252 console can't encode. The example itself runs fine. Given this repo already guards UTF-8 writes explicitly elsewhere, it looked worth flagging rather than silently fixing in a docs PR.--outdefaults toexamples/out/.The existing
assembly_station_coverage_metrics.pngasset is deliberately left untouched (I reverted an incidental re-render).🤖 Generated with Claude Code