# v2.3

## Summary

- Add `rosotacom resources path <name>`: report the host path of a packaged
  resource (`ws`, `com_msgs`) for tooling outside the installation. rosotacom
  installs into an isolated environment (pipx, or a project venv), so a consumer
  cannot `import rosotacom` to compute such a path; this command is the
  supported lookup.

## Compatibility And Migration

- No breaking changes. Consumers that hardcoded a path into a rosotacom checkout
  should switch to `rosotacom resources path com_msgs`.

## Known Issues

- An installed `rosotacom-dev` reports its version as `0+unknown`: the package
  looked up the distribution name `rosotacom`, which the fork no longer uses.
  A version check against a pin therefore never matches, and
  `ota-smoke --install-mode source` started from an installation writes that
  string into the source bundle it builds on each peer, where it is not a valid
  PEP 440 version and the remote build fails. Fixed in 2.4; this release cannot
  be replaced because a published version is immutable.

## Validation

- `just lint`
- `just typecheck`
- `just test-unit`
- `just test-contract`
- `just docs`
- `just package`
- `just test-e2e-smoke`
