Files
AR-Autopilot/.gitignore
T
alro65 8d4a698144 polish(sprint-0): clean code per ruff + mypy strict
Run the dev linters over Sprint 0's core/library/shared modules and
address every finding. Behaviour unchanged; tests still 80/80 green.

Changes:

- Replace `class Foo(str, Enum)` with `class Foo(StrEnum)` (PEP 663
  / Python 3.11+) in 7 enum classes: ActuatorType, AlarmSeverity,
  AlarmType, KnobMode, KnobFunction, AutopilotMode, AccessLevel,
  VesselType. Pydantic v2 serialises StrEnum the same way, so YAML/JSON
  round-trips are byte-identical.
- Use `datetime.UTC` alias in place of `datetime.timezone.utc`
  (UP017) across alarms.py, knob_state.py, project_config.py, and
  test_knob_state.py.
- Remove now-unnecessary forward-reference quotes from method return
  type annotations (UP037) — `from __future__ import annotations` is
  already in scope everywhere.
- Tighten `_read_json_resource` / `_read_yaml_resource` in the library
  loader: validate that the deserialised payload is actually a dict
  before returning, instead of leaking `Any` from json.loads /
  yaml.safe_load. Fixes the only two `mypy --strict` findings.
- Add `.claude/settings.local.json` to .gitignore (personal
  Claude Code overrides are not committed).

Verification:
  ruff check arautopilot/                 -> All checks passed
  mypy arautopilot/core library shared    -> Success, 0 issues, 12 files
  pytest                                  -> 80 passed in 0.25s

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-18 07:26:37 -04:00

145 lines
3.4 KiB
Plaintext

# ============================================================================
# AR-Autopilot — .gitignore
# ============================================================================
# ----------------------------------------------------------------------------
# Python
# ----------------------------------------------------------------------------
__pycache__/
*.py[cod]
*$py.class
*.so
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST
# Virtual environments
.venv/
venv/
env/
ENV/
.env
# pytest / coverage / mypy / ruff
.pytest_cache/
.coverage
.coverage.*
htmlcov/
.tox/
.nox/
coverage.xml
*.cover
.hypothesis/
.mypy_cache/
.dmypy.json
dmypy.json
.ruff_cache/
# Jupyter
.ipynb_checkpoints/
# ----------------------------------------------------------------------------
# Flutter / Dart (display app)
# ----------------------------------------------------------------------------
display/.dart_tool/
display/.flutter-plugins
display/.flutter-plugins-dependencies
display/.packages
display/.pub-cache/
display/.pub/
display/build/
display/**/build/
display/**/.dart_tool/
display/**/.idea/
display/**/*.iml
display/ios/Pods/
display/ios/.symlinks/
display/android/.gradle/
display/android/local.properties
display/android/captures/
display/android/gradlew
display/android/gradlew.bat
display/android/gradle-wrapper.jar
display/windows/flutter/ephemeral/
display/linux/flutter/ephemeral/
display/macos/Flutter/ephemeral/
# ----------------------------------------------------------------------------
# PlatformIO / ESP32 firmware
# ----------------------------------------------------------------------------
firmware/**/.pio/
firmware/**/.pioenvs/
firmware/**/.piolibdeps/
firmware/**/.vscode/
firmware/**/.clang_complete
firmware/**/.gcc-flags.json
# ----------------------------------------------------------------------------
# IDEs / Editors
# ----------------------------------------------------------------------------
.idea/
.vscode/
*.swp
*.swo
*~
.project
.pydevproject
.settings/
# ----------------------------------------------------------------------------
# OS files
# ----------------------------------------------------------------------------
.DS_Store
Thumbs.db
Desktop.ini
*.lnk
# ----------------------------------------------------------------------------
# Build artifacts / installers
# ----------------------------------------------------------------------------
installer/output/
installer/build/
*.msi
*.exe
*.appack
# ----------------------------------------------------------------------------
# Local config / secrets
# ----------------------------------------------------------------------------
*.local.yaml
*.local.json
secrets/
.env.local
.secrets/
# ----------------------------------------------------------------------------
# Examples output
# ----------------------------------------------------------------------------
examples/output/
# ----------------------------------------------------------------------------
# Logs
# ----------------------------------------------------------------------------
*.log
logs/
# ----------------------------------------------------------------------------
# Claude Code local settings (personal overrides — not committed)
# ----------------------------------------------------------------------------
.claude/settings.local.json