diff --git a/.github/workflows/publish-ai-sdk.yml b/.github/workflows/publish-ai-sdk.yml deleted file mode 100644 index 11559c0d5..000000000 --- a/.github/workflows/publish-ai-sdk.yml +++ /dev/null @@ -1,102 +0,0 @@ -name: Publish AI SDK - -on: - push: - branches: - - main - paths: - - "packages/ai-sdk/package.json" - -concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: false - -jobs: - publish: - runs-on: ubuntu-latest - timeout-minutes: 15 - permissions: - contents: read - id-token: write - defaults: - run: - working-directory: ./packages/ai-sdk - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Setup Node - uses: actions/setup-node@v4 - with: - node-version: '24' - registry-url: 'https://registry.npmjs.org' - - - name: Upgrade npm for trusted publishing support - run: npm install -g npm@latest - - - name: Setup Bun - uses: oven-sh/setup-bun@v2 - - - name: Install dependencies - working-directory: . - run: bun install --frozen-lockfile - - - name: Check if version changed - id: version-check - run: | - PACKAGE_NAME=$(jq -r '.name' package.json) - LOCAL_VERSION=$(jq -r '.version' package.json) - if npm view "$PACKAGE_NAME@$LOCAL_VERSION" version >/dev/null 2>&1; then - echo "Version $LOCAL_VERSION already published, skipping." - echo "changed=false" >> "$GITHUB_OUTPUT" - else - echo "Publishing $LOCAL_VERSION." - echo "changed=true" >> "$GITHUB_OUTPUT" - fi - - - name: Wait for the Tools dependency - if: steps.version-check.outputs.changed == 'true' - run: | - TOOLS_SPEC=$(jq -r '.dependencies["@supermemory/tools"]' package.json) - TOOLS_VERSION=${TOOLS_SPEC#^} - TOOLS_VERSION=${TOOLS_VERSION#~} - - if [[ ! "$TOOLS_VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+([+-][0-9A-Za-z.-]+)?$ ]]; then - echo "Unsupported @supermemory/tools dependency spec: $TOOLS_SPEC" >&2 - exit 1 - fi - - for attempt in {1..20}; do - PUBLISHED_VERSION=$(npm view "@supermemory/tools@$TOOLS_VERSION" version 2>/dev/null || true) - if [ "$PUBLISHED_VERSION" = "$TOOLS_VERSION" ]; then - echo "@supermemory/tools@$TOOLS_VERSION is available on npm." - exit 0 - fi - - echo "Waiting for @supermemory/tools@$TOOLS_VERSION (attempt $attempt/20)." - sleep 15 - done - - echo "@supermemory/tools@$TOOLS_VERSION was not published within five minutes." >&2 - exit 1 - - - name: Build Tools dependency - if: steps.version-check.outputs.changed == 'true' - run: bun run --cwd ../tools build - - - name: Build AI SDK package - if: steps.version-check.outputs.changed == 'true' - run: bun run build - - - name: Verify packed artifact - if: steps.version-check.outputs.changed == 'true' - run: | - npm pack --dry-run --json > "$RUNNER_TEMP/ai-sdk-pack.json" - jq -e ' - (.[0].files | any(.path == "dist/index.js")) and - (.[0].files | any(.path == "dist/index.d.ts")) - ' "$RUNNER_TEMP/ai-sdk-pack.json" >/dev/null - - - name: Publish - if: steps.version-check.outputs.changed == 'true' - run: npm publish --access public --provenance