From 1aa45df11ff950d78db39cc90d3c190658b66156 Mon Sep 17 00:00:00 2001 From: Alex Dolid Date: Wed, 14 Oct 2026 20:39:37 +0300 Subject: [PATCH 001/158] chore: prepare the repository for the upyo port The transport layer is about to be ported from upyo 0.7.0, one subpath per upstream package. This sets up what every subpath needs before the first one lands: - LICENSE carries upyo's MIT notice, and CLAUDE.md the rules of the port (attribution header, upstream behavior kept, upstream lint suppressed on the line, describe/it kept in ported suites). - export-parity, bundle, size and check:dts read the exports map, so a subpath is checked as soon as it is declared; graph.test.js forbids require cycles and cross-subpath requires outside an allow-list. - src/version.js holds the name and version for the OpenTelemetry scope, tested against package.json and bumped by the release process. - .gitattributes keeps LF on Windows checkouts, where MIME and DKIM tests compare bytes; sideEffects is false, and tests may use console. Co-Authored-By: Claude Opus 5.5 --- .claude/skills/npm-publish/SKILL.md | 4 +- .gitattributes | 7 ++ .oxlintrc.json | 3 +- CLAUDE.md | 53 +++++++++++-- LICENSE | 26 +++++++ package.json | 3 +- scripts/check-dts.js | 29 +++++++ scripts/size.js | 114 +++++++++++++++++++++------- src/version.js | 5 ++ tests/unit/bundle.test.js | 28 +++++-- tests/unit/export-parity.test.js | 65 ++++++++++------ tests/unit/graph.test.js | 103 +++++++++++++++++++++++++ tests/unit/scripts.test.js | 56 +++++++++++++- tests/unit/version.test.js | 8 ++ 14 files changed, 434 insertions(+), 70 deletions(-) create mode 100644 .gitattributes create mode 100644 scripts/check-dts.js create mode 100644 src/version.js create mode 100644 tests/unit/graph.test.js create mode 100644 tests/unit/version.test.js diff --git a/.claude/skills/npm-publish/SKILL.md b/.claude/skills/npm-publish/SKILL.md index 0f50d46..acdb27d 100644 --- a/.claude/skills/npm-publish/SKILL.md +++ b/.claude/skills/npm-publish/SKILL.md @@ -31,7 +31,7 @@ pnpm run lint # oxlint pnpm run format:check # oxfmt pnpm run test:coverage # tests under the c8 coverage gate pnpm run test:types # tsd -pnpm run check:dts # tsc over index.d.ts +pnpm run check:dts # tsc over the d.ts of every entry of the exports map ``` These are the same gates `prepublishOnly` runs. CI adds three more; run them too: @@ -58,7 +58,7 @@ Compute the new version based on user intent and semver rules: - **prerelease**: `1.2.3` → `1.2.4-