dimensionalOS / dimensionalOS/dimos

Add common methods to the BaseControlTask to reduce boilerplate in Tasks

Open
#2,942 0 comments 0 reactions 1 assignee View on GitHub

@mustafab0 is already working on this.

Since Jul 14, 2026.

control
Dominant language
Python
Stars
4.5k
Forks
808
Avg merge
3d 5h
Merged PRs (30d)
233

Description

It feels like I've seen these implementation classes in tests before.

If ControlTask is a protocol, perhaps BaseControlTask should implement common methods and subclasses should override.

For example, how many ways are there to implemement def name? I've looked at every single one, and all of them (except for one test one) implement it as:

    @property
    def name(self) -> str:
        return self._name

That suggests it should be part of BaseControlTask, and probably many other methods should be as well.

But generally, if the setup for a test is long, that suggests the API is bad.

Originally posted by @paul-nechifor in https://github.com/dimensionalOS/dimos/pull/2882#discussion_r3574842434

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.