Skip to content

desktop-apps/eosim and eostudio are skeletons shadowing the real repos; 20 tests assert True #37

Description

@srpatcha

desktop-apps/eosim and desktop-apps/eostudio are skeletons that shadow the real repositories by name, and the README documents commands against them that do not work.

What is there

files total lines
desktop-apps/eosim 158 162
desktop-apps/eostudio 58 62
desktop-apps/edb 56 4963

138 of eosim's 158 Python files are a single line. Its entire CLI is:

# eApps/desktop-apps/eosim/eosim/cli/main.py
def main(): print('EoSim CLI')

The real one — embeddedos-org/EoSim, eosim/cli/main.py — is 1013 lines and implements 20 commands.

The documented command fails

README line 210:

cd desktop-apps/eosim && pip install -e . && python -m eosim

Step two does not work:

error: Multiple top-level packages discovered in a flat-layout: ['eosim', 'platforms'].

Line 207 documents the same flow for desktop-apps/eostudio.

20 tests that cannot fail

# eApps/desktop-apps/eosim/tests/test_eosim_05.py
# test 5
def test_placeholder_5(): assert True

20 of eApps' 44 test files are of this form. They pass unconditionally and assert nothing. Nothing else in the organisation does this — I scanned all 15 repositories and eApps is the only one.

They are also not currently run: eApps has no root pyproject.toml, so the ecosystem runner detects it as a CMake project, builds it, and reports no tests registered. That report is accurate, which is the problem — the 44 test files are invisible to it.

Why this matters beyond tidiness

§22 assigns eApps the role "Package/application ecosystem" — distribution, not implementation. A skeleton that carries the name of a real product and cannot run is the same failure as the 84 board descriptors of which 71 are generic-*, or a networking subsystem whose connect() returns -1: structure that reads as capability.

Someone following the README concludes EoSim is a one-line stub.

Options, none of which I have taken

This is a product decision rather than a mechanical fix:

  1. Delete the skeletons and have desktop-apps/ point at the real repositories — most consistent with §22's distribution role and with §24's rule against two names for one technology.
  2. Make them genuinely thin launchers that depend on the published eosim / eostudio packages, so the directory is a packaging shim rather than a copy.
  3. Fill them in, if eApps is meant to carry desktop variants that differ from the upstream tools — in which case the placeholder tests should go first, since they currently certify nothing.

Whichever way it goes, the 20 assert True tests should be removed rather than carried forward. A test that cannot fail is worse than no test: it makes a coverage number and a green run mean less everywhere else in the repository.

Verification

All figures measured on 29 Aug 2026: file and line counts by find/wc, the install failure reproduced in a clean venv, the placeholder count by grep across all 15 cloned repositories.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions