Skip to content

WasabiFan/aruw-project-otto-2022-archive

Repository files navigation

Project Otto

By the way, is there anyone on board who knows how to fly a plane?

The new 2021-2022 auto-aim vision system.

Visit the online documentation

System design

The system design is described in the System Architecture section of our documentation. We highly recommend reviewing it to get a sense of Project Otto.

Project Otto was originally designed and planned in the Auto-aim system end-to-end specification (requires ARUW Drive access). The document is outdated in some ways but still provides a strong reference.

Getting stared

Start with the linked resources and Project Otto Edu tutorial series. It will guide you through learning how to work with Project Otto.

Development system setup

See Development set-up.

Important commands

  • Correctness checks
    • poetry run test: run unit tests
    • poetry run ui-test: run typing "user interface" tests (requires Pyright)
    • poetry run update-snapshots: updates the snapshots captured by "snapshot tests"
      • This is only necessary if snapshot tests are failing (including new tests added). (requires Pyright)
    • poetry run typecheck: check code for type correctness (requires Pyright)
  • Policy checks
    • poetry run lint: run all linter steps
    • poetry run format: run auto-formatters
  • Combined checks
    • poetry run check: runs lint, typecheck, test, and ui-test (requires Pyright)
      • Passing this is a requirement prior to submitting a merge request.
  • Dependency management
    • poetry add <package_name>: add and install package dependency
    • poetry update: update dependencies
    • poetry run relock: ensure lockfile is up-to-date (alias for poetry lock --no-update)
    • poetry install: install all required dependencies
      • This should be run frequently, e.g. whenever you pull or switch branches.
  • Documentation
    • poetry run gen-docs: generate static documentation page in docs/_build/html
    • poetry run serve-docs: serve the generated documentation locally at http://localhost:8000/
    • poetry run clean-docs: delete generated documentation
      • This is necessary to pick up changes to theme.css and other static files.

Running the system

See the Operations Guide.

About

By the way, is there anyone on board who knows how to fly a plane?

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors