Skip to content

feat: release 4.0 (npu workflow)#39

Draft
maciejmajek wants to merge 68 commits into
mainfrom
development
Draft

feat: release 4.0 (npu workflow)#39
maciejmajek wants to merge 68 commits into
mainfrom
development

Conversation

@maciejmajek

@maciejmajek maciejmajek commented Jul 1, 2026

Copy link
Copy Markdown
Member

Development → main

This PR replaces the manual multi-step setup with a pixi-managed workflow: environments per deployment profile and tasks covering the full lifecycle, from pixi run setup to pixi run demo. It also adds a config-driven inference dispatcher with NPU support, agentic conversation tracing, a custom spawn service in the sim, and CI.

Notable changes

  • Pixi workflow: per-profile environments (sim, hmi, hil, single-pc gpu/npu) with tasks for the whole lifecycle: setup, build-sim, build-ros2, build-llama, build-fastflowlm, download-models, then sim, stack, inference, agents, hmi, plus demo, demo-trace, smoke-test, and dev tasks (lint, test, kill). ROS 2 deps come from pixi packages instead of submodules; O3DE switched to the SDK; versions locked in pixi.lock.
  • Inference dispatcher (rai_app/inference/serve.py): resolves [endpoints.*] from config.toml into backend launch commands (llama.cpp for GPU/CPU, FastFlowLM for NPU), including health checks and weight downloads.
  • NPU support: FastFlowLM submodule plus backend-aware structured output falling back to GBNF grammar where function calling is unavailable.
  • Agentic trace: ConversationFileCallback records agent conversations to a run dir; demo-trace runs the full demo unattended and collects the trace, also dockerized (Dockerfile.demo).
  • Sim: custom ROS 2 SpawnEntity service handler in the gem, prefab/asset updates, unused level removed.
  • CI: workflow to build, publish, and smoke test Docker images.
  • Docs: rewritten around the pixi flow.

Note:
28K additions come from pixi.lock file

maciejmajek and others added 30 commits May 14, 2026 15:09
fix: run ros2 stack
Signed-off-by: Kacper Dąbrowski <kacper.dabrowski@robotec.ai>
Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>
Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>
Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>
Signed-off-by: Kacper Dąbrowski <kacper.dabrowski@robotec.ai>
Signed-off-by: Kacper Dąbrowski <kacper.dabrowski@robotec.ai>
Signed-off-by: Kacper Dąbrowski <kacper.dabrowski@robotec.ai>
Signed-off-by: Kacper Dąbrowski <kacper.dabrowski@robotec.ai>
Signed-off-by: Kacper Dąbrowski <kacper.dabrowski@robotec.ai>
Signed-off-by: Kacper Dąbrowski <kacper.dabrowski@robotec.ai>
Signed-off-by: Kacper Dąbrowski <kacper.dabrowski@robotec.ai>
Signed-off-by: Kacper Dąbrowski <kacper.dabrowski@robotec.ai>
* refactor: pixi

* fix: inference

* fix: multithreaded llama build

* fix: reranker model name

* feat: smoke test colors

* chore: update links

* docs: update

* docs: update

* docs: update
fix: run ros2 stack

* feat: demo.sh

* feat: single command demo run

* docs: update
Signed-off-by: Kacper Dąbrowski <kacper.dabrowski@robotec.ai>
Signed-off-by: Kacper Dąbrowski <kacper.dabrowski@robotec.ai>
Signed-off-by: Kacper Dąbrowski <kacper.dabrowski@robotec.ai>
Signed-off-by: Kacper Dąbrowski <kacper.dabrowski@robotec.ai>
zakmat and others added 23 commits June 24, 2026 14:07
Align markdown table borders and drop a stray blank line in the setup
guides so pre-commit passes clean. No content changes.

Signed-off-by: Mateusz Żak <mateusz.zak@robotec.ai>
Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>
Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>
Co-authored-by: Maciej Majek <46171033+maciejmajek@users.noreply.github.com>
Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>
Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>
Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>
Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>
Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>
Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>
Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>
Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>
Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>
* Initial changes

Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>

* ROS 2 deps from submodules to pixi packages

Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>
Co-authored-by: Maciej Majek <46171033+maciejmajek@users.noreply.github.com>

* Pre-commit hook changes

Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>

* Add dev pixi env for pre-commit

Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>

* Fix lint env

Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>

* Code review fixes (AI-bloat)

Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>

* Mirror pixi setup from amrcv blueprint

Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>

* Fix pixi issues: Editor and GameLauncher work

Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>

* Remove unused level

Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>

* Code review fixes

Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>

* Add .dockerignore

Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>

---------

Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>
Co-authored-by: Maciej Majek <46171033+maciejmajek@users.noreply.github.com>
Co-authored-by: maciejmajek <maciej.majek@robotec.ai>
* Bump robotec-o3de-tools submodule

Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>

* Update kairos prefab to new WheelAnimTool

Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>

---------

Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>
* feat: agentic trace

* feat: pixi demo-trace task

* refactor: demo trace

* chore: increase inference server setup timeout

* fix: demo trace log handling

* docs: agentic trace
@maciejmajek maciejmajek changed the title Merge development into main Release 4.0 NPU workflow Jul 8, 2026
@maciejmajek maciejmajek changed the title Release 4.0 NPU workflow feat: release 4.0 (npu workflow) Jul 8, 2026
maciejmajek and others added 5 commits July 9, 2026 10:31
Signed-off-by: Kacper Dąbrowski <kacper.dabrowski@robotec.ai>
* Catch moveit errors in housekeep tool

Signed-off-by: Kacper Dąbrowski <kacper.dabrowski@robotec.ai>

* Reset simulation on housekeep fail

Signed-off-by: Kacper Dąbrowski <kacper.dabrowski@robotec.ai>

* pre-commit

Signed-off-by: Kacper Dąbrowski <kacper.dabrowski@robotec.ai>

---------

Signed-off-by: Kacper Dąbrowski <kacper.dabrowski@robotec.ai>
* Catch llm errors

Signed-off-by: Kacper Dąbrowski <kacper.dabrowski@robotec.ai>

* pre-commit

Signed-off-by: Kacper Dąbrowski <kacper.dabrowski@robotec.ai>

* Use formulate prompt

Signed-off-by: Kacper Dąbrowski <kacper.dabrowski@robotec.ai>

---------

Signed-off-by: Kacper Dąbrowski <kacper.dabrowski@robotec.ai>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants