- Remove '|| true' from CI type-check job to enforce strict checking
- Begin type narrowing pattern in units.py with _typed property accessors
- Document all 42 type errors across 15 files in roadmap backlog
- Priority: medium, estimated 4-6 hours to complete
Type errors fall into categories:
- Union types not narrowed after __post_init__ coercion
- float() on object types
- Duplicate method definitions
- Provider interface type mismatches
The job containers cannot resolve 'forgejo' Docker hostname.
Added 'options: --add-host=forgejo:10.100.0.2' to all container blocks.
This adds an entry to /etc/hosts mapping forgejo to the reachable IP.
The runner container cannot resolve 'forgejo' Docker hostname.
Set GITHUB_SERVER_URL to the accessible URL (10.100.0.2:3000).
- Add FORGEJO_URL env var (defaults to http://10.100.0.2:3000)
- Override GITHUB_SERVER_URL for checkout action
- Can be configured via vars.FORGEJO_URL in Forgejo settings
The actions/checkout@v4 action requires Node.js, but python:3.12-slim doesn't include it.
Using catthehacker/ubuntu:act-latest which has both Node.js and Python support.
- Update ci.yaml to use act-compatible image
- Update deploy.yaml to use act-compatible image
- Use actions/setup-python@v5 for Python installation
- Fix registry URL format for Forgejo (host:port/owner/repo)
- Create deploy-forgejo.sh with correct env variables
- Rename CI variables from GitLab CI format to Forgejo/GitHub format
- Simplify workflow structure
- Add proper error handling in deploy script
- Fix SSH key permissions (chmod 600)
- Add ssh-keyscan to avoid StrictHostKeyChecking issues