diff --git a/projects/README.md b/projects/README.md index 84c451ff..2537ea81 100644 --- a/projects/README.md +++ b/projects/README.md @@ -6,7 +6,7 @@ layout. Current projects: -- `middleware-kit`: `mkit` CLI that creates and updates version-matched +- `openshell-middleware-kit`: `omkit` CLI that creates and updates version-matched Python and Rust OpenShell supervisor middleware projects. - `python-project-template`: Minimal, production-ready Python project scaffold managed with uv. diff --git a/projects/middleware-kit/AGENTS.md b/projects/openshell-middleware-kit/AGENTS.md similarity index 92% rename from projects/middleware-kit/AGENTS.md rename to projects/openshell-middleware-kit/AGENTS.md index e3abdbe2..cbfbd537 100644 --- a/projects/middleware-kit/AGENTS.md +++ b/projects/openshell-middleware-kit/AGENTS.md @@ -4,7 +4,7 @@ Read `README.md` and `pyproject.toml` before changing this project. ## Safety rules -- `mkit create` must never write into, follow, or replace an existing output +- `omkit create` must never write into, follow, or replace an existing output path, including a symlink. - Build and check the project in a temporary directory next to its destination. Move it into place only after every check passes. @@ -27,7 +27,7 @@ Read `README.md` and `pyproject.toml` before changing this project. ## Templates -- Templates in `src/middleware_kit/templates/` must produce working standalone +- Templates in `src/openshell_middleware_kit/templates/` must produce working standalone projects. - Write template markers as `__UPPER_SNAKE_CASE__`. Add each marker to `TemplateContext.replacements` and test its rendered value. diff --git a/projects/middleware-kit/README.md b/projects/openshell-middleware-kit/README.md similarity index 74% rename from projects/middleware-kit/README.md rename to projects/openshell-middleware-kit/README.md index 5f96e2b3..5221633c 100644 --- a/projects/middleware-kit/README.md +++ b/projects/openshell-middleware-kit/README.md @@ -1,6 +1,6 @@ # OpenShell Middleware Kit -`middleware-kit` creates and updates Python or Rust services for OpenShell +`openshell-middleware-kit` creates and updates Python or Rust services for OpenShell supervisor middleware. Each new project starts as a working pass-through gRPC service. It includes the protocol file for one OpenShell release, tests, dependency locks, and instructions for registering the service. @@ -16,27 +16,27 @@ The CLI does not install or change OpenShell. ## Install the CLI -Install `mkit` from GitHub with `uv`: +Install `omkit` from GitHub with `uv`: ```sh uv tool install \ - "middleware-kit @ git+https://github.com/NVIDIA/OpenShell-Research.git#subdirectory=projects/middleware-kit" + "openshell-middleware-kit @ git+https://github.com/NVIDIA/OpenShell-Research.git#subdirectory=projects/openshell-middleware-kit" ``` If you already have this repository checked out, install from its local path instead: ```sh -uv tool install /path/to/OpenShell-Research/projects/middleware-kit +uv tool install /path/to/OpenShell-Research/projects/openshell-middleware-kit ``` -Both commands install `mkit` for use outside this repository. +Both commands install `omkit` for use outside this repository. To work on the CLI itself, use the locked project environment: ```sh uv sync --locked -uv run mkit --help +uv run omkit --help ``` ## Quick start @@ -44,7 +44,7 @@ uv run mkit --help Generate and run a Python starter with the installed command: ```sh -mkit create audit-headers \ +omkit create audit-headers \ --language python \ --openshell-version v0.0.86 \ --output /tmp/audit-headers @@ -57,7 +57,7 @@ uv run audit-headers Or generate and run a Rust starter: ```sh -mkit create audit-headers \ +omkit create audit-headers \ --language rust \ --openshell-version v0.0.86 \ --output /tmp/audit-headers-rust @@ -70,7 +70,7 @@ cargo run --locked -- 127.0.0.1:50051 The output path must not exist. Pin an OpenShell tag when you need repeatable builds. Use `--openshell-version latest` when you want the newest release. -Run `mkit --help` for all options. By default, `mkit` derives the Python package +Run `omkit --help` for all options. By default, `omkit` derives the Python package name from the project name. Use `--package-name` to set it yourself. ## Update a project @@ -78,21 +78,21 @@ name from the project name. Use `--package-name` to set it yourself. Run this inside a generated project to use the latest OpenShell release: ```sh -mkit update +omkit update ``` To choose a release or update a project in another directory: ```sh -mkit update /path/to/audit-headers \ +omkit update /path/to/audit-headers \ --openshell-version v0.0.90 ``` -`mkit update` reads `middleware-dev-manifest.json` to find the project language +`omkit update` reads `middleware-dev-manifest.json` to find the project language and Python package. It downloads the selected `supervisor_middleware.proto`, regenerates Python protobuf and gRPC bindings when needed, updates `uv.lock` or `Cargo.lock`, and writes the version and protocol checksum to the manifest. -The manifest must name `middleware-kit` as its generator. +The manifest must name `openshell-middleware-kit` as its generator. ## What you get @@ -111,29 +111,29 @@ Start by implementing policy behavior in the generated `validate_config` and `evaluate_http_request` functions. The generated README explains how to run the service and register it with OpenShell. -## How `mkit` protects your files +## How `omkit` protects your files -`mkit create` builds and checks the project in a temporary directory next to +`omkit create` builds and checks the project in a temporary directory next to the output path. It moves the finished project into place only after every check passes. If the output path already exists, including as a symlink, the command stops without changing it. -`mkit update` works on a temporary copy of the project. It changes only the +`omkit update` works on a temporary copy of the project. It changes only the protocol, generated bindings or Rust build files, lockfile, and manifest. It runs the project checks before replacing those files. Your implementation files -stay unchanged. If a file replacement fails, `mkit` restores the files it +stay unchanged. If a file replacement fails, `omkit` restores the files it already replaced. -A lock prevents two `mkit` processes from changing the same path at once. +A lock prevents two `omkit` processes from changing the same path at once. Normal failures remove the lock and temporary files. If an update and its -rollback both fail, `mkit` keeps the recovery files and prints their locations. +rollback both fail, `omkit` keeps the recovery files and prints their locations. -If the process is killed, it may leave a `..middleware-kit.lock` +If the process is killed, it may leave a `..openshell-middleware-kit.lock` directory and a temporary project directory. Clean them up as follows: 1. Open `metadata.json` in the lock directory. 2. On the host listed in that file, check that the listed PID is no longer an - `mkit` process. + `omkit` process. 3. For `create`, also check that the requested output path does not exist. Never remove the project directory after an interrupted `update`. 4. Inspect the temporary directory listed in `metadata.json`, then remove only diff --git a/projects/middleware-kit/pyproject.toml b/projects/openshell-middleware-kit/pyproject.toml similarity index 80% rename from projects/middleware-kit/pyproject.toml rename to projects/openshell-middleware-kit/pyproject.toml index 7b0c24f9..926950e8 100644 --- a/projects/middleware-kit/pyproject.toml +++ b/projects/openshell-middleware-kit/pyproject.toml @@ -1,5 +1,5 @@ [project] -name = "middleware-kit" +name = "openshell-middleware-kit" version = "0.1.0" description = "Create and update version-matched OpenShell middleware projects." readme = "README.md" @@ -13,7 +13,7 @@ dependencies = [ ] [project.scripts] -mkit = "middleware_kit.cli:main" +omkit = "openshell_middleware_kit.cli:main" [project.urls] Repository = "https://github.com/NVIDIA/OpenShell-Research" @@ -34,7 +34,7 @@ build-backend = "uv_build" addopts = [ "--strict-config", "--strict-markers", - "--cov=middleware_kit", + "--cov=openshell_middleware_kit", "--cov-report=term-missing", "--cov-fail-under=95", ] @@ -43,14 +43,14 @@ testpaths = ["tests"] [tool.ruff] line-length = 100 target-version = "py310" -extend-exclude = ["src/middleware_kit/templates"] +extend-exclude = ["src/openshell_middleware_kit/templates"] [tool.ruff.lint] select = ["B", "E", "F", "I", "RUF", "SIM", "UP"] [tool.ty.src] include = ["src", "tests"] -exclude = ["src/middleware_kit/templates"] +exclude = ["src/openshell_middleware_kit/templates"] [tool.uv] required-version = ">=0.11.0" diff --git a/projects/middleware-kit/src/middleware_kit/__init__.py b/projects/openshell-middleware-kit/src/openshell_middleware_kit/__init__.py similarity index 100% rename from projects/middleware-kit/src/middleware_kit/__init__.py rename to projects/openshell-middleware-kit/src/openshell_middleware_kit/__init__.py diff --git a/projects/middleware-kit/src/middleware_kit/cli.py b/projects/openshell-middleware-kit/src/openshell_middleware_kit/cli.py similarity index 97% rename from projects/middleware-kit/src/middleware_kit/cli.py rename to projects/openshell-middleware-kit/src/openshell_middleware_kit/cli.py index 2fdf215d..b26b5cf8 100644 --- a/projects/middleware-kit/src/middleware_kit/cli.py +++ b/projects/openshell-middleware-kit/src/openshell_middleware_kit/cli.py @@ -8,7 +8,7 @@ import typer -from middleware_kit.generator import ( +from openshell_middleware_kit.generator import ( ProjectError, create_project, update_project, @@ -113,7 +113,7 @@ def update( def _report_error(error: ProjectError) -> None: - typer.echo(f"mkit: error: {error}", err=True) + typer.echo(f"omkit: error: {error}", err=True) raise typer.Exit(code=1) from error diff --git a/projects/middleware-kit/src/middleware_kit/generator.py b/projects/openshell-middleware-kit/src/openshell_middleware_kit/generator.py similarity index 99% rename from projects/middleware-kit/src/middleware_kit/generator.py rename to projects/openshell-middleware-kit/src/openshell_middleware_kit/generator.py index 72a2256b..3566ce26 100644 --- a/projects/middleware-kit/src/middleware_kit/generator.py +++ b/projects/openshell-middleware-kit/src/openshell_middleware_kit/generator.py @@ -26,7 +26,7 @@ from importlib.resources import files from pathlib import Path -from middleware_kit import __version__ +from openshell_middleware_kit import __version__ _REPOSITORY_URL = "https://github.com/NVIDIA/OpenShell" _RAW_URL = "https://raw.githubusercontent.com/NVIDIA/OpenShell" @@ -36,7 +36,7 @@ _PYTHON_PACKAGE_PATTERN = re.compile(r"^[a-z][a-z0-9_]*$") _PROJECT_NAME_PATTERN = re.compile(r"^[a-z0-9](?:[a-z0-9._-]*[a-z0-9])?$") _NETWORK_ATTEMPTS = 4 -_TOOL_NAME = "middleware-kit" +_TOOL_NAME = "openshell-middleware-kit" _STAGING_IGNORED_ROOT_ENTRIES = { ".coverage", ".git", @@ -512,7 +512,7 @@ def _read_project_metadata(project_dir: Path) -> ProjectMetadata: generator = manifest.get("generator") generator_name = generator.get("name") if isinstance(generator, dict) else None if generator_name != _TOOL_NAME: - raise ProjectError("project manifest generator must be middleware-kit") + raise ProjectError("project manifest generator must be openshell-middleware-kit") languages = manifest.get("languages") if languages not in (["python"], ["rust"]): raise ProjectError("project manifest must identify exactly one supported language") @@ -989,7 +989,7 @@ def _publish_generated_artifacts( def _render_project(destination: Path, language: str, context: TemplateContext) -> None: - template_root = files("middleware_kit").joinpath("templates").joinpath(language) + template_root = files("openshell_middleware_kit").joinpath("templates").joinpath(language) template_paths = { "python": ( ".gitignore", diff --git a/projects/middleware-kit/src/middleware_kit/templates/python/.gitignore b/projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/python/.gitignore similarity index 100% rename from projects/middleware-kit/src/middleware_kit/templates/python/.gitignore rename to projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/python/.gitignore diff --git a/projects/middleware-kit/src/middleware_kit/templates/python/README.md b/projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/python/README.md similarity index 98% rename from projects/middleware-kit/src/middleware_kit/templates/python/README.md rename to projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/python/README.md index 3ebc6976..6986ca19 100644 --- a/projects/middleware-kit/src/middleware_kit/templates/python/README.md +++ b/projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/python/README.md @@ -65,7 +65,7 @@ for the policy syntax supported by your pinned OpenShell release. Commit these files. Refresh all version-matched artifacts together with: ```sh -mkit update --openshell-version latest +omkit update --openshell-version latest ``` Use a release tag instead of `latest` for a reproducible update. diff --git a/projects/middleware-kit/src/middleware_kit/templates/python/pyproject.toml b/projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/python/pyproject.toml similarity index 100% rename from projects/middleware-kit/src/middleware_kit/templates/python/pyproject.toml rename to projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/python/pyproject.toml diff --git a/projects/middleware-kit/src/middleware_kit/templates/python/src/package/__init__.py b/projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/python/src/package/__init__.py similarity index 100% rename from projects/middleware-kit/src/middleware_kit/templates/python/src/package/__init__.py rename to projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/python/src/package/__init__.py diff --git a/projects/middleware-kit/src/middleware_kit/templates/python/src/package/bindings/__init__.py b/projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/python/src/package/bindings/__init__.py similarity index 100% rename from projects/middleware-kit/src/middleware_kit/templates/python/src/package/bindings/__init__.py rename to projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/python/src/package/bindings/__init__.py diff --git a/projects/middleware-kit/src/middleware_kit/templates/python/src/package/server.py b/projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/python/src/package/server.py similarity index 100% rename from projects/middleware-kit/src/middleware_kit/templates/python/src/package/server.py rename to projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/python/src/package/server.py diff --git a/projects/middleware-kit/src/middleware_kit/templates/python/tests/test_server.py b/projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/python/tests/test_server.py similarity index 100% rename from projects/middleware-kit/src/middleware_kit/templates/python/tests/test_server.py rename to projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/python/tests/test_server.py diff --git a/projects/middleware-kit/src/middleware_kit/templates/rust/.gitignore b/projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/rust/.gitignore similarity index 100% rename from projects/middleware-kit/src/middleware_kit/templates/rust/.gitignore rename to projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/rust/.gitignore diff --git a/projects/middleware-kit/src/middleware_kit/templates/rust/Cargo.toml b/projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/rust/Cargo.toml similarity index 100% rename from projects/middleware-kit/src/middleware_kit/templates/rust/Cargo.toml rename to projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/rust/Cargo.toml diff --git a/projects/middleware-kit/src/middleware_kit/templates/rust/README.md b/projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/rust/README.md similarity index 98% rename from projects/middleware-kit/src/middleware_kit/templates/rust/README.md rename to projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/rust/README.md index d8e9f83c..e2135843 100644 --- a/projects/middleware-kit/src/middleware_kit/templates/rust/README.md +++ b/projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/rust/README.md @@ -62,7 +62,7 @@ for the policy syntax supported by your pinned OpenShell release. Commit these files. Refresh all version-matched artifacts together with: ```sh -mkit update --openshell-version latest +omkit update --openshell-version latest ``` Use a release tag instead of `latest` for a reproducible update. diff --git a/projects/middleware-kit/src/middleware_kit/templates/rust/build.rs b/projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/rust/build.rs similarity index 100% rename from projects/middleware-kit/src/middleware_kit/templates/rust/build.rs rename to projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/rust/build.rs diff --git a/projects/middleware-kit/src/middleware_kit/templates/rust/src/lib.rs b/projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/rust/src/lib.rs similarity index 100% rename from projects/middleware-kit/src/middleware_kit/templates/rust/src/lib.rs rename to projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/rust/src/lib.rs diff --git a/projects/middleware-kit/src/middleware_kit/templates/rust/src/main.rs b/projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/rust/src/main.rs similarity index 100% rename from projects/middleware-kit/src/middleware_kit/templates/rust/src/main.rs rename to projects/openshell-middleware-kit/src/openshell_middleware_kit/templates/rust/src/main.rs diff --git a/projects/middleware-kit/tests/test_cli.py b/projects/openshell-middleware-kit/tests/test_cli.py similarity index 93% rename from projects/middleware-kit/tests/test_cli.py rename to projects/openshell-middleware-kit/tests/test_cli.py index f6ec6b3f..51ab28f9 100644 --- a/projects/middleware-kit/tests/test_cli.py +++ b/projects/openshell-middleware-kit/tests/test_cli.py @@ -2,8 +2,8 @@ from typer.testing import CliRunner -from middleware_kit import cli -from middleware_kit.generator import ProjectError, ProjectResult +from openshell_middleware_kit import cli +from openshell_middleware_kit.generator import ProjectError, ProjectResult runner = CliRunner() @@ -79,7 +79,7 @@ def fake_create_project(**options): ) assert result.exit_code == 1 - assert "error: output exists" in result.stderr + assert "omkit: error: output exists" in result.stderr def test_cli_reports_update_success(monkeypatch, tmp_path: Path) -> None: @@ -124,4 +124,4 @@ def fake_update_project(**options): result = runner.invoke(cli.app, ["update", str(tmp_path)]) assert result.exit_code == 1 - assert "error: not generated" in result.stderr + assert "omkit: error: not generated" in result.stderr diff --git a/projects/middleware-kit/tests/test_generator.py b/projects/openshell-middleware-kit/tests/test_generator.py similarity index 96% rename from projects/middleware-kit/tests/test_generator.py rename to projects/openshell-middleware-kit/tests/test_generator.py index ed86ada0..dd6402e2 100644 --- a/projects/middleware-kit/tests/test_generator.py +++ b/projects/openshell-middleware-kit/tests/test_generator.py @@ -14,8 +14,8 @@ import pytest -from middleware_kit import generator -from middleware_kit.generator import ProjectError, create_project, update_project +from openshell_middleware_kit import generator +from openshell_middleware_kit.generator import ProjectError, create_project, update_project PROTO = b"""syntax = "proto3"; package openshell.middleware.v1; @@ -64,7 +64,7 @@ def test_generates_python_project_with_provenance(tmp_path: Path) -> None: assert manifest["languages"] == ["python"] assert manifest["python_package"] == "audit_headers" assert len(manifest["proto_sha256"]) == 64 - assert not (tmp_path / ".audit-headers.middleware-kit.lock").exists() + assert not (tmp_path / ".audit-headers.openshell-middleware-kit.lock").exists() def test_generates_rust_project_with_normalized_crate_name(tmp_path: Path) -> None: @@ -129,9 +129,9 @@ def updated_proto(version: str) -> tuple[bytes, str]: assert (destination / "src/audit_headers/bindings/__init__.py").is_file() manifest = json.loads((destination / "middleware-dev-manifest.json").read_text()) assert manifest["openshell_version"] == "v1.2.3" - assert manifest["generator"]["name"] == "middleware-kit" - assert not (tmp_path / ".audit-headers.middleware-kit.lock").exists() - assert not list(tmp_path.glob(".audit-headers.middleware-kit.*")) + assert manifest["generator"]["name"] == "openshell-middleware-kit" + assert not (tmp_path / ".audit-headers.openshell-middleware-kit.lock").exists() + assert not list(tmp_path.glob(".audit-headers.openshell-middleware-kit.*")) def test_failed_update_keeps_original_project_unchanged(tmp_path: Path) -> None: @@ -161,8 +161,8 @@ def fail_runner(language: str, project: Path, package: str) -> None: assert (destination / "middleware-dev-manifest.json").read_bytes() == original_manifest assert (destination / "proto/supervisor_middleware.proto").read_bytes() == original_proto - assert not (tmp_path / ".audit.middleware-kit.lock").exists() - assert not list(tmp_path.glob(".audit.middleware-kit.*")) + assert not (tmp_path / ".audit.openshell-middleware-kit.lock").exists() + assert not list(tmp_path.glob(".audit.openshell-middleware-kit.*")) def test_publication_failure_rolls_back_exchanged_artifacts( @@ -237,8 +237,8 @@ def fail_publication_and_rollback(source: Path, target: Path) -> None: ) assert calls == 3 - assert (tmp_path / ".audit.middleware-kit.lock").is_dir() - assert len(list(tmp_path.glob(".audit.middleware-kit.*"))) == 2 + assert (tmp_path / ".audit.openshell-middleware-kit.lock").is_dir() + assert len(list(tmp_path.glob(".audit.openshell-middleware-kit.*"))) == 2 def test_update_rejects_non_generated_project(tmp_path: Path) -> None: @@ -278,18 +278,18 @@ def test_update_rejects_symlink_and_missing_project_paths(tmp_path: Path) -> Non [ ("not json", "could not read"), ("[]", "JSON object"), - ('{"generator": {"name": "other"}}', "generator must be middleware-kit"), + ('{"generator": {"name": "other"}}', "generator must be openshell-middleware-kit"), ( - '{"generator": {"name": "middleware-kit"}, "languages": ["python", "rust"]}', + '{"generator": {"name": "openshell-middleware-kit"}, "languages": ["python", "rust"]}', "exactly one", ), ( - '{"generator": {"name": "middleware-kit"}, ' + '{"generator": {"name": "openshell-middleware-kit"}, ' '"languages": ["python"], "python_package": "Bad-Package"}', "invalid or missing", ), ( - '{"generator": {"name": "middleware-kit"}, ' + '{"generator": {"name": "openshell-middleware-kit"}, ' '"languages": ["rust"], "python_package": "unexpected"}', "must set python_package", ), @@ -314,7 +314,7 @@ def test_update_requires_regular_generated_artifacts(tmp_path: Path) -> None: (destination / "middleware-dev-manifest.json").write_text( json.dumps( { - "generator": {"name": "middleware-kit"}, + "generator": {"name": "openshell-middleware-kit"}, "languages": ["rust"], "python_package": None, } @@ -337,7 +337,7 @@ def test_update_requires_python_bindings_directory(tmp_path: Path) -> None: (destination / "middleware-dev-manifest.json").write_text( json.dumps( { - "generator": {"name": "middleware-kit"}, + "generator": {"name": "openshell-middleware-kit"}, "languages": ["python"], "python_package": "audit", } @@ -707,9 +707,9 @@ def test_refuses_a_dangling_destination_symlink(tmp_path: Path) -> None: def test_refuses_a_reserved_destination(tmp_path: Path) -> None: destination = tmp_path / "reserved" - (tmp_path / ".reserved.middleware-kit.lock").mkdir() + (tmp_path / ".reserved.openshell-middleware-kit.lock").mkdir() - with pytest.raises(ProjectError, match="reserved by another middleware-kit"): + with pytest.raises(ProjectError, match="reserved by another openshell-middleware-kit"): create_project( name="reserved", language="rust", @@ -744,7 +744,7 @@ def collide_before_publish(source: Path, final_output: Path) -> None: ) assert (destination / "owned-by-other-process").read_text() == "keep me\n" - assert not (tmp_path / ".contended.middleware-kit.lock").exists() + assert not (tmp_path / ".contended.openshell-middleware-kit.lock").exists() def test_failure_cleans_staging_and_owned_reservation(tmp_path: Path) -> None: @@ -765,8 +765,8 @@ def fail_runner(language: str, project: Path, package: str) -> None: ) assert not destination.exists() - assert not (tmp_path / ".failing.middleware-kit.lock").exists() - assert not list(tmp_path.glob(".failing.middleware-kit.*")) + assert not (tmp_path / ".failing.openshell-middleware-kit.lock").exists() + assert not list(tmp_path.glob(".failing.openshell-middleware-kit.*")) def test_rejects_an_unexpected_proto(tmp_path: Path) -> None: diff --git a/projects/middleware-kit/uv.lock b/projects/openshell-middleware-kit/uv.lock similarity index 99% rename from projects/middleware-kit/uv.lock rename to projects/openshell-middleware-kit/uv.lock index 1a28bb8b..3efd3c8a 100644 --- a/projects/middleware-kit/uv.lock +++ b/projects/openshell-middleware-kit/uv.lock @@ -166,7 +166,7 @@ wheels = [ ] [[package]] -name = "middleware-kit" +name = "openshell-middleware-kit" version = "0.1.0" source = { editable = "." } dependencies = [