Workspace import fix + multiline def params + composable rigid smoke¶
Summary¶
import physics.rigid now resolves to packages/li-physics-rigid (not std/physics/rigid.li) by parsing members = [...] correctly in packages/li.toml; the parser accepts multiline parameter lists; composable import_physics_runtime.li runs one semi-implicit integrate step.
Agent continuation¶
- Read
compiler/types/import_resolve.cpp(parse_workspace_members) andcompiler/parser/parser.cpp(skip_param_layout). - Run
./scripts/ci.shor./li-tests/run_all.sh composableafterlicbuild. - Next: composable smoke for
import physics.runtime/physics_step; sync package mirrors if APIs changed. - Blocked on:
li-physics-*org mirror publish (lic #50).
Changed¶
compiler/types/import_resolve.cpp—members = [array parse (skip[workspace]section header)compiler/parser/parser.cpp— newlines/indents insidedef (...)parameter lists; barereturnfor-> unitpackages/li-physics-rigid/src/lib.li,packages/li-physics-runtime/src/lib.li—b: var RigidBodyonrigid_integrate_semi_implicitpackages/li-physics-relativity/src/lib.li—var floatonlorentz_gamma/relativistic_momentumvelocity param (borrowck)packages/li-physics-runtime/src/lib.li—substep_invfor float substep dt;var PhysicsWorldon step/substep procs (typecheck; fulllic buildof runtime lib still hits codegen crash — follow-up)li-tests/composable/import_physics_runtime.li— version + integrate smokeli-tests/encapsulation/def_multiline_params.li,li-tests/manifest.tomldocs/physics/SIMULATION_UI_READINESS.md
Not changed¶
std/physics/rigid.lifacade (still tag-only stub; workspace package wins when present).- Import resolver order (workspace before std) — only member-list parsing fixed.
- Benchmarks dashboard thresholds; org mirror repos.
Breaking¶
N/A — import resolution now matches documented workspace-first behavior.
Security¶
N/A.
Performance¶
N/A.
Downstream¶
- Re-run
./scripts/sync-package-mirror-def-syntax-pr.shfor physics-related mirrors after merge if packagesrc/lib.lichanged.