From e19237b9e850de1d01b2891913726ebf3055cc2d Mon Sep 17 00:00:00 2001 From: bigboateng Date: Wed, 29 Jul 2026 01:57:49 +0100 Subject: [PATCH] fix(pitot): make the npm and python SDK packages publishable MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The v0.1.0 release run failed at the npm binding publish: the TypeScript SDK had never been built as a package and lacked node type definitions for its runner (readline/process). Add @types/node + tsconfig types pin; verify both binding builds in isolation (tsc -> dist/, python -m build -> sdist+wheel). SDK manifests also correct license metadata MIT -> Apache-2.0 to match the repository license. Disclosure-Reviewed: reviewed — public-safe only, private facet kept out of this commit --- labs/15-pitot/pitot-distribution/UPSTREAM.json | 8 ++++---- .../release-notes/2026-07-29-sdk-binding-builds.md | 10 ++++++++++ .../pitot-distribution/sdk/python/pyproject.toml | 2 +- labs/15-pitot/pitot-distribution/sdk/rust/Cargo.toml | 2 +- .../pitot-distribution/sdk/typescript/package.json | 3 ++- .../pitot-distribution/sdk/typescript/tsconfig.json | 1 + 6 files changed, 19 insertions(+), 7 deletions(-) create mode 100644 labs/15-pitot/pitot-distribution/release-notes/2026-07-29-sdk-binding-builds.md diff --git a/labs/15-pitot/pitot-distribution/UPSTREAM.json b/labs/15-pitot/pitot-distribution/UPSTREAM.json index 5d90dc43b..2d8ac7459 100644 --- a/labs/15-pitot/pitot-distribution/UPSTREAM.json +++ b/labs/15-pitot/pitot-distribution/UPSTREAM.json @@ -90,18 +90,18 @@ "sdk/python/pitot/__init__.py": "9cab11b333536f167d4e7bb6089ef00488690ec7b5cd5701f08e8bbb13cef0f7", "sdk/python/pitot/runner.py": "8d4537ffc3aee2ea22b1d691559ac1eb1e95521df9ad5bf241ee6ac54c9925b1", "sdk/python/pitot/types.py": "c9a7221f1ad6627f152f26148155d3c74f249c52262c73a515251f469e8eb4ad", - "sdk/python/pyproject.toml": "ecd3d54f2e31ae4a95ab168d6a6674d218ae5d4cf1e91bf8c64a8cc1ce3e74cb", + "sdk/python/pyproject.toml": "b7990a7a4d2a3db874a5f8c6f9e09673bf928936b64cf0bd4d4a1727aae3305d", "sdk/runner.go": "e9a8db96d3cf6df7ea7e661e6755650f97e580970995dfe881b4268db0c3f832", - "sdk/rust/Cargo.toml": "b8435f6c600ad0791bd29ada4bc396b14e54b96ee3804896c8e610583cc70c1a", + "sdk/rust/Cargo.toml": "1c42ed7ff351ad54ab87c29bbbef96a7bd574b4109ca12eb84d3f8daf42dcc77", "sdk/rust/src/lib.rs": "fd2dcb9bf9df47fb58e52e4e94136f95867616d941ba66b4b324413d1c5b1777", "sdk/rust/src/runner.rs": "168eb3f926aed4b86aa27ad66ab605326974b6a345b07a35126d4b66e0968b33", "sdk/rust/src/types.rs": "82cd5a5ec12effa6688e8b9b6028bbef67ec43f24d9fd9d19b4235934061ffb8", "sdk/tests/test_runners.py": "9e86a03b53b108b70204e797b4c65b3d157c6765543a9bb9d7bb892daaf4d8c4", - "sdk/typescript/package.json": "8bd1fa7716b65c3c6599307d8d2e9398c75ae842c6047e9e0ad7716122db9a03", + "sdk/typescript/package.json": "747b5bab8df073d39b9ef92f28b6b7b43eb00bc127c0647cda4e4003b3db7295", "sdk/typescript/src/index.ts": "bddb336bc120ecd979de0288e432ed2b41749d39f11c697f019af5e54c2e9fba", "sdk/typescript/src/pitot.ts": "9c243824cbb7edc54b1e125abfd828bf2ed77e7151a0bd5c5d4f63e81ca9b00c", "sdk/typescript/src/runner.ts": "c58babd3ec3996a05988f3cb7dec061cf7c48f41cd5125625be3408cb9b207f0", - "sdk/typescript/tsconfig.json": "3acd617cc06089125bcd963a3624131d765bb59e1a93db9736e78de6cf4fb40d", + "sdk/typescript/tsconfig.json": "de0065da9acf19a93ba8646c90b7101dfd5a8667552d3d3c59e3effd813218aa", "sensor/decode_fuzz_test.go": "d27f2fbbc069eded26a73c9cd9bace98dd8a9e34949576790b81a08d130fbaf2", "sensor/sensor.go": "5c503d07ac33e7894d635f2d98bcd6d165d442d60c127ed6aeac80ec319086c5", "sensor/sensor_test.go": "4ddbdde3e486c9e189a2ed4174ad413df107d43dc98f5242da3667a24c7a5da1", diff --git a/labs/15-pitot/pitot-distribution/release-notes/2026-07-29-sdk-binding-builds.md b/labs/15-pitot/pitot-distribution/release-notes/2026-07-29-sdk-binding-builds.md new file mode 100644 index 000000000..1454de3e7 --- /dev/null +++ b/labs/15-pitot/pitot-distribution/release-notes/2026-07-29-sdk-binding-builds.md @@ -0,0 +1,10 @@ +### The npm and python SDK packages build for publication + +The v0.1.0 release run proved the binaries channel end to end but failed at +the npm binding publish: the TypeScript SDK package had never been built as a +package — it lacked node type definitions for its runner (readline, process). +The package now declares @types/node and pins `types: ["node"]` in its +tsconfig; both the npm and python binding builds are verified in isolation +(tsc emits dist/, `python -m build` emits the operatorstack-pitot sdist and +wheel). SDK manifests also correct their license metadata from MIT to +Apache-2.0, matching the repository license. diff --git a/labs/15-pitot/pitot-distribution/sdk/python/pyproject.toml b/labs/15-pitot/pitot-distribution/sdk/python/pyproject.toml index 8177fa88a..2f53f6ed3 100644 --- a/labs/15-pitot/pitot-distribution/sdk/python/pyproject.toml +++ b/labs/15-pitot/pitot-distribution/sdk/python/pyproject.toml @@ -12,7 +12,7 @@ description = "Pitot: The passive, protocol-first measurement boundary for codin authors = [ { name = "Operator Stack" } ] -license = { text = "MIT" } +license = { text = "Apache-2.0" } requires-python = ">=3.10" dependencies = [] diff --git a/labs/15-pitot/pitot-distribution/sdk/rust/Cargo.toml b/labs/15-pitot/pitot-distribution/sdk/rust/Cargo.toml index 867d8f727..30a2f9baa 100644 --- a/labs/15-pitot/pitot-distribution/sdk/rust/Cargo.toml +++ b/labs/15-pitot/pitot-distribution/sdk/rust/Cargo.toml @@ -3,7 +3,7 @@ name = "pitot" version = "0.1.0" edition = "2021" description = "Pitot: The passive, protocol-first measurement boundary for coding agents." -license = "MIT" +license = "Apache-2.0" repository = "https://github.com/operatorstack/pitot" [lib] diff --git a/labs/15-pitot/pitot-distribution/sdk/typescript/package.json b/labs/15-pitot/pitot-distribution/sdk/typescript/package.json index c8455e16c..026d7fc89 100644 --- a/labs/15-pitot/pitot-distribution/sdk/typescript/package.json +++ b/labs/15-pitot/pitot-distribution/sdk/typescript/package.json @@ -18,8 +18,9 @@ "directory": "sdk/typescript" }, "author": "Operator Stack", - "license": "MIT", + "license": "Apache-2.0", "devDependencies": { + "@types/node": "^22.0.0", "typescript": "^5.0.0" } } diff --git a/labs/15-pitot/pitot-distribution/sdk/typescript/tsconfig.json b/labs/15-pitot/pitot-distribution/sdk/typescript/tsconfig.json index d6c779dad..f1c114a81 100644 --- a/labs/15-pitot/pitot-distribution/sdk/typescript/tsconfig.json +++ b/labs/15-pitot/pitot-distribution/sdk/typescript/tsconfig.json @@ -6,6 +6,7 @@ "rootDir": "src", "outDir": "dist", "strict": true, + "types": ["node"], "esModuleInterop": true, "skipLibCheck": true, "forceConsistentCasingInFileNames": true