Compare commits

...

3 Commits

Author SHA1 Message Date
Dotta
63c62e3ada chore: release v0.3.1 2026-03-12 13:09:22 -05:00
Dotta
964e04369a fixes verification 2026-03-12 12:55:26 -05:00
Dotta
873535fbf0 verify the packages actually make it to npm 2026-03-12 12:42:00 -05:00
25 changed files with 176 additions and 14 deletions

View File

@@ -1,5 +1,23 @@
# paperclipai # paperclipai
## 0.3.1
### Patch Changes
- Stable release preparation for 0.3.1
- Updated dependencies
- @paperclipai/adapter-utils@0.3.1
- @paperclipai/adapter-claude-local@0.3.1
- @paperclipai/adapter-codex-local@0.3.1
- @paperclipai/adapter-cursor-local@0.3.1
- @paperclipai/adapter-gemini-local@0.3.1
- @paperclipai/adapter-openclaw-gateway@0.3.1
- @paperclipai/adapter-opencode-local@0.3.1
- @paperclipai/adapter-pi-local@0.3.1
- @paperclipai/db@0.3.1
- @paperclipai/shared@0.3.1
- @paperclipai/server@0.3.1
## 0.3.0 ## 0.3.0
### Minor Changes ### Minor Changes

View File

@@ -1,6 +1,6 @@
{ {
"name": "paperclipai", "name": "paperclipai",
"version": "0.3.0", "version": "0.3.1",
"description": "Paperclip CLI — orchestrate AI agent teams to run a business", "description": "Paperclip CLI — orchestrate AI agent teams to run a business",
"type": "module", "type": "module",
"bin": { "bin": {

View File

@@ -1,5 +1,11 @@
# @paperclipai/adapter-utils # @paperclipai/adapter-utils
## 0.3.1
### Patch Changes
- Stable release preparation for 0.3.1
## 0.3.0 ## 0.3.0
### Minor Changes ### Minor Changes

View File

@@ -1,6 +1,6 @@
{ {
"name": "@paperclipai/adapter-utils", "name": "@paperclipai/adapter-utils",
"version": "0.3.0", "version": "0.3.1",
"type": "module", "type": "module",
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -1,5 +1,13 @@
# @paperclipai/adapter-claude-local # @paperclipai/adapter-claude-local
## 0.3.1
### Patch Changes
- Stable release preparation for 0.3.1
- Updated dependencies
- @paperclipai/adapter-utils@0.3.1
## 0.3.0 ## 0.3.0
### Minor Changes ### Minor Changes

View File

@@ -1,6 +1,6 @@
{ {
"name": "@paperclipai/adapter-claude-local", "name": "@paperclipai/adapter-claude-local",
"version": "0.3.0", "version": "0.3.1",
"type": "module", "type": "module",
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -1,5 +1,13 @@
# @paperclipai/adapter-codex-local # @paperclipai/adapter-codex-local
## 0.3.1
### Patch Changes
- Stable release preparation for 0.3.1
- Updated dependencies
- @paperclipai/adapter-utils@0.3.1
## 0.3.0 ## 0.3.0
### Minor Changes ### Minor Changes

View File

@@ -1,6 +1,6 @@
{ {
"name": "@paperclipai/adapter-codex-local", "name": "@paperclipai/adapter-codex-local",
"version": "0.3.0", "version": "0.3.1",
"type": "module", "type": "module",
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -1,5 +1,13 @@
# @paperclipai/adapter-cursor-local # @paperclipai/adapter-cursor-local
## 0.3.1
### Patch Changes
- Stable release preparation for 0.3.1
- Updated dependencies
- @paperclipai/adapter-utils@0.3.1
## 0.3.0 ## 0.3.0
### Minor Changes ### Minor Changes

View File

@@ -1,6 +1,6 @@
{ {
"name": "@paperclipai/adapter-cursor-local", "name": "@paperclipai/adapter-cursor-local",
"version": "0.3.0", "version": "0.3.1",
"type": "module", "type": "module",
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -1,6 +1,6 @@
{ {
"name": "@paperclipai/adapter-gemini-local", "name": "@paperclipai/adapter-gemini-local",
"version": "0.2.7", "version": "0.3.1",
"type": "module", "type": "module",
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -1,5 +1,13 @@
# @paperclipai/adapter-openclaw-gateway # @paperclipai/adapter-openclaw-gateway
## 0.3.1
### Patch Changes
- Stable release preparation for 0.3.1
- Updated dependencies
- @paperclipai/adapter-utils@0.3.1
## 0.3.0 ## 0.3.0
### Minor Changes ### Minor Changes

View File

@@ -1,6 +1,6 @@
{ {
"name": "@paperclipai/adapter-openclaw-gateway", "name": "@paperclipai/adapter-openclaw-gateway",
"version": "0.3.0", "version": "0.3.1",
"type": "module", "type": "module",
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -1,5 +1,13 @@
# @paperclipai/adapter-opencode-local # @paperclipai/adapter-opencode-local
## 0.3.1
### Patch Changes
- Stable release preparation for 0.3.1
- Updated dependencies
- @paperclipai/adapter-utils@0.3.1
## 0.3.0 ## 0.3.0
### Minor Changes ### Minor Changes

View File

@@ -1,6 +1,6 @@
{ {
"name": "@paperclipai/adapter-opencode-local", "name": "@paperclipai/adapter-opencode-local",
"version": "0.3.0", "version": "0.3.1",
"type": "module", "type": "module",
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -1,5 +1,13 @@
# @paperclipai/adapter-pi-local # @paperclipai/adapter-pi-local
## 0.3.1
### Patch Changes
- Stable release preparation for 0.3.1
- Updated dependencies
- @paperclipai/adapter-utils@0.3.1
## 0.3.0 ## 0.3.0
### Minor Changes ### Minor Changes

View File

@@ -1,6 +1,6 @@
{ {
"name": "@paperclipai/adapter-pi-local", "name": "@paperclipai/adapter-pi-local",
"version": "0.3.0", "version": "0.3.1",
"type": "module", "type": "module",
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -1,5 +1,13 @@
# @paperclipai/db # @paperclipai/db
## 0.3.1
### Patch Changes
- Stable release preparation for 0.3.1
- Updated dependencies
- @paperclipai/shared@0.3.1
## 0.3.0 ## 0.3.0
### Minor Changes ### Minor Changes

View File

@@ -1,6 +1,6 @@
{ {
"name": "@paperclipai/db", "name": "@paperclipai/db",
"version": "0.3.0", "version": "0.3.1",
"type": "module", "type": "module",
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -1,5 +1,11 @@
# @paperclipai/shared # @paperclipai/shared
## 0.3.1
### Patch Changes
- Stable release preparation for 0.3.1
## 0.3.0 ## 0.3.0
### Minor Changes ### Minor Changes

View File

@@ -1,6 +1,6 @@
{ {
"name": "@paperclipai/shared", "name": "@paperclipai/shared",
"version": "0.3.0", "version": "0.3.1",
"type": "module", "type": "module",
"exports": { "exports": {
".": "./src/index.ts", ".": "./src/index.ts",

View File

@@ -196,6 +196,36 @@ npm_version_exists() {
[ "$resolved" = "$version" ] [ "$resolved" = "$version" ]
} }
npm_package_version_exists() {
local package_name="$1"
local version="$2"
local resolved
resolved="$(npm view "${package_name}@${version}" version 2>/dev/null || true)"
[ "$resolved" = "$version" ]
}
wait_for_npm_package_version() {
local package_name="$1"
local version="$2"
local attempts="${3:-12}"
local delay_seconds="${4:-5}"
local attempt=1
while [ "$attempt" -le "$attempts" ]; do
if npm_package_version_exists "$package_name" "$version"; then
return 0
fi
if [ "$attempt" -lt "$attempts" ]; then
sleep "$delay_seconds"
fi
attempt=$((attempt + 1))
done
return 1
}
require_clean_worktree() { require_clean_worktree() {
if [ -n "$(git -C "$REPO_ROOT" status --porcelain)" ]; then if [ -n "$(git -C "$REPO_ROOT" status --porcelain)" ]; then
release_fail "working tree is not clean. Commit, stash, or remove changes before releasing." release_fail "working tree is not clean. Commit, stash, or remove changes before releasing."

View File

@@ -181,10 +181,12 @@ for (const rel of roots) {
rows.sort((a, b) => a[0].localeCompare(b[0])); rows.sort((a, b) => a[0].localeCompare(b[0]));
for (const [dir, name] of rows) { for (const [dir, name] of rows) {
const key = `${dir}\t${name}`; const pkgPath = path.join(root, dir, 'package.json');
const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf8'));
const key = `${dir}\t${name}\t${pkg.version}`;
if (seen.has(key)) continue; if (seen.has(key)) continue;
seen.add(key); seen.add(key);
process.stdout.write(`${dir}\t${name}\n`); process.stdout.write(`${dir}\t${name}\t${pkg.version}\n`);
} }
NODE NODE
} }
@@ -356,6 +358,8 @@ if [ "$canary" = true ]; then
fi fi
fi fi
VERSIONED_PACKAGE_INFO="$(list_public_package_info)"
VERSION_IN_CLI_PACKAGE="$(node -e "console.log(require('$CLI_DIR/package.json').version)")" VERSION_IN_CLI_PACKAGE="$(node -e "console.log(require('$CLI_DIR/package.json').version)")"
if [ "$VERSION_IN_CLI_PACKAGE" != "$TARGET_PUBLISH_VERSION" ]; then if [ "$VERSION_IN_CLI_PACKAGE" != "$TARGET_PUBLISH_VERSION" ]; then
release_fail "versioning drift detected. Expected $TARGET_PUBLISH_VERSION but found $VERSION_IN_CLI_PACKAGE." release_fail "versioning drift detected. Expected $TARGET_PUBLISH_VERSION but found $VERSION_IN_CLI_PACKAGE."
@@ -403,6 +407,31 @@ else
npx changeset publish npx changeset publish
release_info " ✓ Published ${TARGET_PUBLISH_VERSION} under dist-tag latest" release_info " ✓ Published ${TARGET_PUBLISH_VERSION} under dist-tag latest"
fi fi
release_info ""
release_info "==> Post-publish verification: Confirming npm package availability..."
VERIFY_ATTEMPTS="${NPM_PUBLISH_VERIFY_ATTEMPTS:-12}"
VERIFY_DELAY_SECONDS="${NPM_PUBLISH_VERIFY_DELAY_SECONDS:-5}"
MISSING_PUBLISHED_PACKAGES=""
while IFS=$'\t' read -r pkg_dir pkg_name pkg_version; do
[ -z "$pkg_name" ] && continue
release_info " Checking $pkg_name@$pkg_version"
if wait_for_npm_package_version "$pkg_name" "$pkg_version" "$VERIFY_ATTEMPTS" "$VERIFY_DELAY_SECONDS"; then
release_info " ✓ Found on npm"
continue
fi
if [ -n "$MISSING_PUBLISHED_PACKAGES" ]; then
MISSING_PUBLISHED_PACKAGES="${MISSING_PUBLISHED_PACKAGES}, "
fi
MISSING_PUBLISHED_PACKAGES="${MISSING_PUBLISHED_PACKAGES}${pkg_name}@${pkg_version}"
done <<< "$VERSIONED_PACKAGE_INFO"
if [ -n "$MISSING_PUBLISHED_PACKAGES" ]; then
release_fail "publish completed but npm never exposed: $MISSING_PUBLISHED_PACKAGES. Inspect the changeset publish output before treating this release as good."
fi
release_info " ✓ Verified all versioned packages are available on npm"
fi fi
release_info "" release_info ""

View File

@@ -1,5 +1,22 @@
# @paperclipai/server # @paperclipai/server
## 0.3.1
### Patch Changes
- Stable release preparation for 0.3.1
- Updated dependencies
- @paperclipai/adapter-utils@0.3.1
- @paperclipai/adapter-claude-local@0.3.1
- @paperclipai/adapter-codex-local@0.3.1
- @paperclipai/adapter-cursor-local@0.3.1
- @paperclipai/adapter-gemini-local@0.3.1
- @paperclipai/adapter-openclaw-gateway@0.3.1
- @paperclipai/adapter-opencode-local@0.3.1
- @paperclipai/adapter-pi-local@0.3.1
- @paperclipai/db@0.3.1
- @paperclipai/shared@0.3.1
## 0.3.0 ## 0.3.0
### Minor Changes ### Minor Changes

View File

@@ -1,6 +1,6 @@
{ {
"name": "@paperclipai/server", "name": "@paperclipai/server",
"version": "0.3.0", "version": "0.3.1",
"type": "module", "type": "module",
"exports": { "exports": {
".": "./src/index.ts" ".": "./src/index.ts"