docs: doc/ — the module map, the QC gates, and the agent tools - #38
Merged
Conversation
WIP. Writes down what the pipeline is made of and what each QC gate promises,
in one place instead of across module docstrings.
modules.md the eight modules the system is built from
QC/collision_check.md the collision gate: entities, rules, the deterministic
function, and what a failure hands the repair step
QC/door_open.md a note, not yet a check
Tools/*.md placeholders, one per agent tool — structure only
Lowercase `doc/` deliberately: this filesystem is case-insensitive
(`core.ignorecase=true`), so a stray `Doc/` looks identical locally but is a
separate path on Linux CI. Fixing the case now is cheaper than after two
directories exist upstream.
`QC/support_check.md` is not here — it belongs with the code it describes,
in the support-check PR.
It was committed as a mode-160000 submodule pointer with no .gitmodules, so a fresh clone got an empty, unfixable example-scans/ directory. The scans are cloned separately (github.com/LiteReality/example-scans), so ignore the path instead. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MzyqwdyphzzWVUeMd5qgNK
ZheningHuang
marked this pull request as ready for review
September 9, 2026 12:33
# Conflicts: # .gitignore
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.
Somewhere to write down what the pipeline is made of and what each QC gate actually promises, rather than leaving it spread across module docstrings.
doc/modules.mddoc/QC/collision_check.mddoc/QC/supporting_relationship.mddoc/Tools/threed_gen.mddoc/Tools/rendering_and_compare.mddoc/Tools/image_selection.mdselect_views— which frames a tool looks at, and why the agent never guesses onedoc/Tools/fetch_material.mddoc/Sim-Ready-intergration/What these pages are for
Each one records the parts that are decisions rather than implementation details — the things a reader cannot recover from the code:
collision_check.md— which findings fail the gate and which don't (floatingandoutside_roomare reported but never fail: one means a missing support object, the other means the scan's wall loop is wrong, and neither is repairable here); why contact comes from the raw triangles but distance from a convex decomposition; and that a failure hands the fixer an exact metric vector, not a description.supporting_relationship.md— that touching is not the same as supported. A lamp on the last centimetre of a table corner passes any gap test and topples on frame 1, so the check is contact plus centre-of-mass over the shared footprint.no_supporteronly reports, because this stage can move an object but cannot invent the table that should have been under it.rendering_and_compare.md— the two invariants that keep a render honest: recompile whenRoom.pyis stale, and repack any procedural object whoseobject.pyis newer than its packed GLB. Without the second, editing an object and re-rendering shows the old one, and the agent concludes its edit did nothing.Figures
assets/doc/carries the per-tool figures from the project blog post, plus two stills from its object-reconstruction videos showing the same three panels down each route — procedural/articulated and TRELLIS. Provenance is recorded inassets/doc/README.md.Also here
example-scanshad been committed as a mode-160000 gitlink with no.gitmodules, so a fresh clone got an empty, unfixable directory. Untracked and ignored — the scans are cloned separately.Still open
doc/Sim-Ready-intergration/Mujoco.mdis empty.collision_check.mdsays wall fixtures are "fixed to the wall". In the current code they are in no collision body at all — Panda-1 has five that are simply absent from the model.