dimensionalOS / dimensionalOS/dimos
Conditional blueprint modules
Open
Nobody has claimed this yet.
core
- Dominant language
- Python
- Stars
- 4.5k
- Forks
- 808
- Avg merge
- 3d 5h
- Merged PRs (30d)
- 233
Description
Blueprints have no way to express "include these modules only if X", so we have to depend on cli args and have these pseudo "meta modules"
def vis_module(viewer_backend: ViewerBackend, rerun_config: dict[str, Any] | None = None) -> Blueprint:
match viewer_backend:
case "rerun":
bundle = autoconnect(
RerunBridgeModule.blueprint(**rerun_config),
RerunWebSocketServer.blueprint(),
WebsocketVisModule.blueprint(),
)
case "none":
bundle = autoconnect(WebsocketVisModule.blueprint())
case _:
raise ValueError(f"Unknown viewer_backend {viewer_backend!r}")
return bundle
Ideally there would be a way for the blueprint itself to express this choice
Synced from DIM-1463 by jeff
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing the Blueprint and autoconnect entry points used by vis_module, then compare how the rerun and none branches currently depend on cli args and meta modules. Define what conditional inclusion should look like in a blueprint and consider how completion would be verified for both viewer_backend choices.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100