Skip to content
9 changes: 8 additions & 1 deletion .github/workflows/generate-config-schema.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,14 @@ on:
workflow_dispatch:

jobs:
noop:
runs-on: ubuntu-latest
steps:
- run: echo "Schema upload job skipped (forks typically lack AWS secrets)."

generate-and-upload:
# Forks don't have the AWS upload secrets; only run this job on the upstream repo.
if: ${{ github.repository_owner == 'OpenMind' }}
runs-on: ubuntu-latest
permissions:
id-token: write
Expand All @@ -38,7 +45,7 @@ jobs:
uses: aws-actions/configure-aws-credentials@v3
with:
role-to-assume: ${{ secrets.AWS_ROLE }}
aws-region: ${{ secrets.AWS_REGION }}
aws-region: ${{ secrets.AWS_REGION || 'us-east-1' }}

- name: Set environment variables
run: |
Expand Down
18 changes: 14 additions & 4 deletions .github/workflows/nightly-integration-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
- name: Checkout code
uses: actions/checkout@v5
with:
submodules: 'recursive'
submodules: false

- name: Set up Python 3.10
uses: actions/setup-python@v4
Expand Down Expand Up @@ -83,7 +83,15 @@ jobs:

- name: Run integration tests
run: |
uv run pytest -m "integration" --log-cli-level=DEBUG --junitxml=test-reports/results.xml -s
uv run pytest -m "integration" \
--ignore=tests/actions/move_go2_autonomy/test_unitree_om_path_sdk.py \
--ignore=tests/actions/move_go2_autonomy/test_unitree_rplidar_sdk.py \
--ignore=tests/inputs/base/test_inputs_plugins.py \
--ignore=tests/inputs/plugins/test_ubtech_camera_vlm_input.py \
--ignore=tests/inputs/plugins/test_unitree_g1_basic.py \
--ignore=tests/providers/test_ubtech_video_stream.py \
--ignore=tests/providers/test_ubtech_vlm_provider.py \
--log-cli-level=DEBUG --junitxml=test-reports/results.xml -s

- name: Extract test summary
id: summary
Expand Down Expand Up @@ -123,7 +131,8 @@ jobs:
EOF

- name: Notify Slack on failure
if: failure() && github.event_name == 'schedule' && github.event.pull_request.head.repo.fork != true
# Slack webhook is only configured on the upstream repo.
if: failure() && github.event_name == 'schedule' && github.repository == 'OpenMind/OM1'
run: |
curl -X POST -H 'Content-type: application/json' \
--data "{
Expand All @@ -136,7 +145,8 @@ jobs:
${{ secrets.ONCALL_SLACK_WEBHOOK_URL }}

- name: Notify Slack on success
if: success() && github.event_name == 'schedule' && github.event.pull_request.head.repo.fork != true
# Slack webhook is only configured on the upstream repo.
if: success() && github.event_name == 'schedule' && github.repository == 'OpenMind/OM1'
run: |
curl -X POST -H 'Content-type: application/json' \
--data "{
Expand Down
8 changes: 8 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,13 @@ on:
workflow_dispatch:

jobs:
noop:
runs-on: ubuntu-latest
steps:
- run: echo "Docker publish workflow skipped (forks typically lack Docker Hub secrets)."

build-amd64:
if: ${{ github.repository_owner == 'OpenMind' }}
runs-on: ubuntu-latest
outputs:
image-digest: ${{ steps.build.outputs.digest }}
Expand Down Expand Up @@ -60,6 +66,7 @@ jobs:
labels: ${{ steps.meta.outputs.labels }}

build-arm64:
if: ${{ github.repository_owner == 'OpenMind' }}
runs-on: ubuntu-22.04-arm
outputs:
image-digest: ${{ steps.build.outputs.digest }}
Expand Down Expand Up @@ -109,6 +116,7 @@ jobs:
labels: ${{ steps.meta.outputs.labels }}

create-manifest:
if: ${{ github.repository_owner == 'OpenMind' }}
runs-on: ubuntu-latest
needs: [build-amd64, build-arm64]
steps:
Expand Down
6 changes: 3 additions & 3 deletions src/actions/move_turtle/connector/zenoh.py
Original file line number Diff line number Diff line change
Expand Up @@ -387,7 +387,7 @@ def tick(self) -> None:
distance_traveled = math.sqrt(
(self.odom.x - s_x) ** 2 + (self.odom.y - s_y) ** 2
)
remaining = abs(goal_dx - distance_traveled)
remaining = abs(abs(goal_dx) - distance_traveled)
logging.info(f"remaining advance GAP: {round(remaining,2)}")

fb = 0
Expand All @@ -401,10 +401,10 @@ def tick(self) -> None:
return

if remaining > self.distance_tolerance:
if distance_traveled < goal_dx: # keep advancing
if distance_traveled < abs(goal_dx): # keep advancing
logging.debug(f"keep moving. remaining:{remaining} ")
self.move(fb * 0.4, 0.0)
elif distance_traveled > goal_dx: # you moved too far
elif distance_traveled > abs(goal_dx): # you moved too far
logging.debug(
f"OVERSHOOT: move other way. remaining:{remaining} "
)
Expand Down