chore(workspace): record packaging migration baseline
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
## Why
|
||||
|
||||
The repository currently publishes the local device runtime, cloud modules, and integration adapters as one flat Python distribution with no lockfile. Introducing a uv workspace now gives the runtime and future cloud applications explicit package ownership, reproducible dependency resolution, and independently runnable entry points before distributed cloud behavior is added.
|
||||
|
||||
## What Changes
|
||||
|
||||
- Configure the repository as a uv workspace with the existing `device-agent-runtime` project retained as the root member.
|
||||
- Extract the existing `cloud` package into a dedicated workspace distribution without changing its public Python import paths or runtime behavior.
|
||||
- Establish workspace conventions that allow the cloud API and device host agent to be added as independently installable members by the subsequent cloud integration change.
|
||||
- Declare internal dependencies through uv workspace sources and generate a committed `uv.lock` for reproducible development and CI environments.
|
||||
- Preserve the existing Vue/Vite console as an npm-managed project outside the Python workspace.
|
||||
- Preserve existing Runtime, REST, MCP, and test behavior during the packaging migration.
|
||||
|
||||
## Capabilities
|
||||
|
||||
### New Capabilities
|
||||
|
||||
- `workspace-packaging`: Defines the Python workspace membership, internal dependency direction, reproducible locking, and independently runnable project boundaries.
|
||||
|
||||
### Modified Capabilities
|
||||
|
||||
None. This change restructures packaging and dependency ownership without changing existing capability requirements.
|
||||
|
||||
## Impact
|
||||
|
||||
- Affects the root `pyproject.toml`, Python package locations, build metadata, import/package discovery configuration, development commands, CI commands, and the generated `uv.lock`.
|
||||
- Existing local Runtime consumers continue to use the `device-agent-runtime` distribution and current import paths.
|
||||
- Cloud code becomes an outer workspace dependency of the Runtime; inner packages such as `core`, `driver`, `device`, and `tools` remain unaware of cloud or transport concerns.
|
||||
- No REST/MCP contract, task execution behavior, database schema, or frontend package-management behavior changes in this proposal.
|
||||
Reference in New Issue
Block a user