Skip to content

Audit Phase 1: make packages installable and every directory self-describing #176

Open

Description

@charliehuge

Umbrella for Phase 1 of the 2026-11-09 codebase audit. Details for each item are in docs/audit/2026-11-09/backlog.md §Phase 1 (branch claude/hopeful-fermi-cearzd); evidence in docs/audit/2026-11-09/detail/. Do after Phase 0. Roughly 2–3 person-days. Break out into individual issues when picked up.

Goal

A reader (human or model) can open IIVision/, ShowControl/OSCFabric/, any Element, or any firmware directory and see what it is and what it depends on, without reading the rest of the repo.

Items

ID Task Effort Source
P1-01 Root pyproject.toml: IIVision + OSCFabric installable, per-Element extras; delete sys.path.insert hacks (FlowerBeds/main.py:32,53, FundingCAPTCHA/app.py:42-44, body_blobs.py:28, body_grid_tester.py:47-48), the four requirements.txt, pytest.ini S core §5
P1-02 One load_network_config (today 4 implementations + a try/except block copied 3×); serve Dashboard ports from network.json instead of hardcoding in index.html:55-60 S core §3b
P1-03 Fix PlayingThePipes docs: PlayingThePipes.maxpat never existed on main, show patch is Lamplight2026/patchers/Lamplight2026.maxpat; no RNBO anywhere; list externals (grainflow~, abl.device.*); add ShowControl/PlayingThePipes/README.md S firmware §3a, §6
P1-04 Finish scripts/hooks/firmware_config_gen.py TODO so the FlowerBeds .ino includes a generated config.h instead of hardcoding MAC and 192.168.1.51 (AGENTS.md constraint #3 is currently violated) S firmware §1d
P1-05 README stubs (≤20 lines each): IIVision/, ShowControl/OSCFabric/, FundingCAPTCHA/games/, Firmware/ (table: dir → board → drives → live/retired), scripts/, plus 10-line READMEs for the three live firmware dirs without one. Contents specified in docs §7 S docs §7, firmware §1f
P1-06 scripts/lib/install-element.sh shared by the four near-identical deploy/install.sh; template WorkingDirectory= from repo root; add the missing usermod -aG _seat to the TreeHouse installer (only the obsolete looking_glass/deploy/install.sh has it) S core §3g, §8
P1-07 Fold Firmware/ESP32S3_SignsOfLife into TreeHouse_Controllers as [env:signsoflife]; move its boot-loop triage README into the main README S firmware §1c
P1-08 Run the 51 existing pio test -e native firmware tests in CI S firmware §1e
P1-09 Move TouchOSC/FlowerBedTester.tosc beside FlowerBeds/diag.py with a README, or delete it S firmware §4
P1-10 Dev deps: add av, Pillow, pyserial so no test silently skips (subsumed by P1-01's dev extra if done together) S fundingcaptcha §7

Done when

  • pip install -e . then pytest from any cwd passes.
  • grep -rn "sys.path.insert" --include=*.py is empty.
  • Every top-level and firmware directory has a README.
  • The FlowerBeds .ino contains no literal IP or MAC.

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