Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
117 commits
Select commit Hold shift + click to select a range
fc38d6c
WIP
ccosnett Sep 18, 2025
8f83aca
WIP
ccosnett Sep 18, 2025
b9f6e83
WIP
ccosnett Sep 18, 2025
caac1bd
WIP
ccosnett Sep 18, 2025
e147e9a
WIP
ccosnett Sep 18, 2025
e12c3e8
WIP
ccosnett Sep 18, 2025
3a3ee49
WIP
ccosnett Sep 18, 2025
1255ced
WIP
ccosnett Sep 18, 2025
1d32d13
WIP
ccosnett Sep 18, 2025
5ac6cad
WIP
ccosnett Sep 18, 2025
4dae6a0
WIP
ccosnett Sep 18, 2025
1cb1fc0
WIP
ccosnett Sep 18, 2025
28e8b75
WIP
ccosnett Sep 18, 2025
fbdb8dc
WIP
ccosnett Sep 18, 2025
bffa594
WIP
ccosnett Sep 18, 2025
211bae6
WIP
ccosnett Sep 18, 2025
f530ae4
WIP
ccosnett Sep 18, 2025
d48e13b
WIP
ccosnett Sep 18, 2025
7b4b25d
WIP
ccosnett Sep 18, 2025
5dcde53
WIP
ccosnett Sep 18, 2025
c56d396
WIP
ccosnett Sep 18, 2025
7bfafe5
WIP
ccosnett Sep 18, 2025
95cbe3d
WIP
ccosnett Sep 18, 2025
aec58dd
WIP
ccosnett Sep 18, 2025
a0f8cac
WIP
ccosnett Sep 18, 2025
e4353ca
WIP
ccosnett Sep 18, 2025
b811f35
WIP
ccosnett Sep 18, 2025
c429141
WIP
ccosnett Sep 18, 2025
03d734d
WIP
ccosnett Sep 18, 2025
6729e06
WIP
ccosnett Sep 18, 2025
3552109
WIP
ccosnett Sep 18, 2025
d4e813c
WIP
ccosnett Sep 18, 2025
1ccfc5c
WIP
ccosnett Sep 18, 2025
7b76a8e
WIP
ccosnett Sep 18, 2025
9ff0edd
WIP
ccosnett Sep 18, 2025
0996d9f
WIP
ccosnett Sep 18, 2025
bb50645
WIP
ccosnett Sep 18, 2025
949a51e
WIP
ccosnett Sep 18, 2025
7426bf0
WIP
ccosnett Sep 18, 2025
5d5d087
WIP
ccosnett Sep 18, 2025
ff2c959
WIP
ccosnett Sep 18, 2025
47c4d68
WIP
ccosnett Sep 18, 2025
4c95c0e
WIP
ccosnett Sep 18, 2025
24779aa
WIP
ccosnett Sep 18, 2025
dcdef7e
WIP
ccosnett Sep 18, 2025
87a0e16
remove redundant file
ccosnett Sep 22, 2025
211870a
change filename
ccosnett Sep 22, 2025
1d60c89
simplify
ccosnett Sep 22, 2025
e5827c4
WIP
ccosnett Sep 22, 2025
4d24f2b
WIP
ccosnett Sep 22, 2025
2c52c93
WIP
ccosnett Sep 22, 2025
7ca7774
wip
ccosnett Sep 22, 2025
5f9f72a
wip
ccosnett Sep 22, 2025
b65694a
wip
ccosnett Sep 22, 2025
e4ed66b
wip
ccosnett Sep 22, 2025
f7258cd
WIP
ccosnett Sep 22, 2025
ba97419
WIP
ccosnett Sep 22, 2025
28799c5
WIP
ccosnett Sep 22, 2025
7c77ce3
WIP
ccosnett Sep 23, 2025
5cf1052
WIP
ccosnett Sep 23, 2025
f3ff314
✨ Add SDK snippets jobs to main workflow
ccosnett Sep 24, 2025
6cd300c
COMMENT OUT JOBS
ccosnett Sep 24, 2025
1382783
🔢 Limit SDK snippets to first 10 endpoints for faster testing
ccosnett Sep 24, 2025
6914ac5
Debug
scheuclu Sep 24, 2025
3e1ac7d
Debug
scheuclu Sep 24, 2025
d2e8c6f
Debug
scheuclu Sep 24, 2025
6f318ca
Debug
scheuclu Sep 24, 2025
3ae49e7
STAGING
ccosnett Sep 25, 2025
c3dea46
STAGING
ccosnett Sep 25, 2025
164e572
WIP
ccosnett Sep 25, 2025
4383eba
STAGING
ccosnett Sep 25, 2025
a4e266c
STAGING
ccosnett Sep 25, 2025
edce7dd
STAGING
ccosnett Sep 25, 2025
2f441e0
STAGING
ccosnett Sep 25, 2025
f463db3
STAGING
ccosnett Sep 25, 2025
d0c0138
STAGING
ccosnett Sep 25, 2025
e251bf6
STAGING
ccosnett Sep 25, 2025
4e6566e
STAGING
ccosnett Sep 25, 2025
c5278bb
STAGING
ccosnett Sep 25, 2025
b39f50f
STAGING
ccosnett Sep 25, 2025
0582993
STAGING
ccosnett Sep 25, 2025
5a3a619
STAGING
ccosnett Sep 25, 2025
ed96c64
WIP
ccosnett Sep 25, 2025
c8535fa
WIP
ccosnett Sep 25, 2025
f1379ce
STAGING
ccosnett Sep 25, 2025
e384603
STAGING
ccosnett Sep 25, 2025
bfc0539
STAGING
ccosnett Sep 25, 2025
747746d
STAGING
ccosnett Sep 25, 2025
59c41e9
STAGING
ccosnett Sep 25, 2025
6fbf198
STAGING
ccosnett Sep 25, 2025
2def586
STAGING
ccosnett Sep 25, 2025
9782cd7
STAGING
ccosnett Sep 25, 2025
1a3db67
STAGING
ccosnett Sep 25, 2025
a28a2ce
WIP
ccosnett Sep 25, 2025
a2abbe0
WIP
ccosnett Sep 25, 2025
e5aa5d5
WIP
ccosnett Sep 25, 2025
031fdb2
WIP
ccosnett Sep 25, 2025
190a64b
WIP
ccosnett Sep 25, 2025
deb6c95
WIP
ccosnett Sep 25, 2025
fc0c4cd
WIP
ccosnett Sep 25, 2025
b08518b
WIP
ccosnett Sep 25, 2025
ea308d7
WIP
ccosnett Sep 25, 2025
d4a3a39
WIP
ccosnett Sep 25, 2025
c1e36b1
WIP
ccosnett Sep 25, 2025
7415806
WIP
ccosnett Sep 25, 2025
7e03da3
WIP
ccosnett Sep 25, 2025
363dfba
WIP
ccosnett Sep 25, 2025
17a07c2
WIP
ccosnett Sep 25, 2025
c607864
WIP
ccosnett Sep 25, 2025
e52b0aa
WIP
ccosnett Sep 25, 2025
75c1b97
WIP
ccosnett Sep 26, 2025
1f7624e
WIP
ccosnett Sep 26, 2025
4bab6a6
WIP
ccosnett Sep 26, 2025
df502e8
WIP
ccosnett Sep 26, 2025
e122ab7
remove v0 workflow
ccosnett Oct 8, 2025
2c828c3
running staging workflow
ccosnett Oct 8, 2025
f5fddc1
STAGING_COMPASS_API_KEY
ccosnett Oct 8, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
135 changes: 135 additions & 0 deletions .github/workflows/test_prod_snippets___prod_api_server___prod_sdk.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
name: test_prod_snippets___prod_api_server___prod_sdk
# not sure how to test release candidate snippets

on:
pull_request:
branches: [ main ]
push:
branches:
- 'conor/com-5939-create-workflow-for-sdk-snippets-test'
workflow_dispatch:

jobs:

discover_sdk_snippets:
runs-on: ubuntu-latest
env:
COMPASS_API_KEY: ${{ secrets.COMPASS_API_KEY }}

outputs:
items: ${{ steps.collect.outputs.items }}

steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Setup uv and Python
uses: astral-sh/setup-uv@v5
with:
python-version: "3.12"

- name: Install dependencies (uv)
working-directory: v1/test_sdk_snippets
run: uv sync

- id: collect
name: Collect endpoints (writes items=... to $GITHUB_OUTPUT)
working-directory: v1/test_sdk_snippets
run: uv run python discover_endpoints.py

- name: Print collected items
run: |
cat > items.json <<'JSON'
${{ steps.collect.outputs.items }}
JSON
echo "Collected items ✅ (pretty):"
jq . items.json | tee items.pretty.json

python:
needs: discover_sdk_snippets #
if: ${{ needs.discover_sdk_snippets.outputs.items != '' }}
runs-on: ubuntu-latest
env:
COMPASS_API_KEY: ${{ secrets.COMPASS_API_KEY }}
#SERVER_URL: ${{ secrets.STAGING_SERVER_URL }}
SERVER_URL: https://api.compasslabs.ai/
strategy:
fail-fast: false
max-parallel: 3 # limit concurrency
matrix: ${{ fromJson(needs.discover_sdk_snippets.outputs.items) }}

steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Setup uv and Python
uses: astral-sh/setup-uv@v5
with:
python-version: "3.12"

- name: Install dependencies (uv)
working-directory: v1/test_sdk_snippets
run: uv sync

- name: Print compass-api-sdk version (uv)
working-directory: v1/test_sdk_snippets
run: uv pip freeze | grep -i '^compass-api-sdk' || echo "compass-api-sdk not installed"

- name: Print pyproject.toml after installing dependencies
working-directory: v1/test_sdk_snippets
run: cat pyproject.toml

- name: Run endpoint snippet
working-directory: v1/test_sdk_snippets
run: uv run python run_endpoint_python.py
env:
ENDPOINT: ${{ matrix.item }}

typescript:
needs: discover_sdk_snippets #
if: ${{ needs.discover_sdk_snippets.outputs.items != '' }}
runs-on: ubuntu-latest
env:
COMPASS_API_KEY: ${{ secrets.COMPASS_API_KEY }}
#SERVER_URL: ${{ secrets.STAGING_SERVER_URL }}
SERVER_URL: https://api.compasslabs.ai/
strategy:
fail-fast: false
max-parallel: 3 # limit concurrency
matrix: ${{ fromJson(needs.discover_sdk_snippets.outputs.items) }}

steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Setup uv and Python
uses: astral-sh/setup-uv@v5
with:
python-version: "3.12"

- name: Install dependencies (uv)
working-directory: v1/test_sdk_snippets
run: uv sync

- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'

- name: Install Node deps for TS snippets
working-directory: v1/test_sdk_snippets
run: |
npm init -y >/dev/null 2>&1 || true
npm i -D tsx
# Install the TS SDK used by snippets
npm i @compass-labs/api-sdk

- name: List installed @compass-labs/api-sdk
working-directory: v1/test_sdk_snippets
run: npm ls @compass-labs/api-sdk || true

- name: Run endpoint snippet
working-directory: v1/test_sdk_snippets
run: uv run python run_endpoint_typescript.py
env:
ENDPOINT: ${{ matrix.item }}
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
name: test_prod_snippets___staging_api_server___latest_sdk
# not sure how to test release candidate snippets

on:
pull_request:
branches: [ main ]
push:
branches:
- 'conor/com-5939-create-workflow-for-sdk-snippets-test'

workflow_dispatch:

jobs:

discover_sdk_snippets:
runs-on: ubuntu-latest
env:
COMPASS_API_KEY: ${{ secrets.STAGING_COMPASS_API_KEY }}

outputs:
items: ${{ steps.collect.outputs.items }}

steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Setup uv and Python
uses: astral-sh/setup-uv@v5
with:
python-version: "3.12"

- name: Install dependencies (uv)
working-directory: v1/test_sdk_snippets
run: uv sync

- id: collect
name: Collect endpoints (writes items=... to $GITHUB_OUTPUT)
working-directory: v1/test_sdk_snippets
run: uv run python discover_endpoints.py

- name: Print collected items
run: |
cat > items.json <<'JSON'
${{ steps.collect.outputs.items }}
JSON
echo "Collected items ✅ (pretty):"
jq . items.json | tee items.pretty.json

python:
needs: discover_sdk_snippets #
if: ${{ needs.discover_sdk_snippets.outputs.items != '' }}
runs-on: ubuntu-latest
env:
COMPASS_API_KEY: ${{ secrets.STAGING_COMPASS_API_KEY }}
SERVER_URL: ${{ secrets.STAGING_SERVER_URL }} #https://api.compasslabs.ai/

strategy:
fail-fast: false
#max-parallel: 3 # limit concurrency
matrix: ${{ fromJson(needs.discover_sdk_snippets.outputs.items) }}

steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Setup uv and Python
uses: astral-sh/setup-uv@v5
with:
python-version: "3.12"

- name: Install dependencies (uv)
working-directory: v1/test_sdk_snippets
run: uv sync

- name: Print compass-api-sdk version (uv)
working-directory: v1/test_sdk_snippets
run: uv pip freeze | grep -i '^compass-api-sdk' || echo "compass-api-sdk not installed"

- name: Print pyproject.toml after installing dependencies
working-directory: v1/test_sdk_snippets
run: cat pyproject.toml

- name: Run endpoint snippet
working-directory: v1/test_sdk_snippets
run: uv run python run_endpoint_python.py
env:
ENDPOINT: ${{ matrix.item }}

typescript:
needs: discover_sdk_snippets #
if: ${{ needs.discover_sdk_snippets.outputs.items != '' }}
runs-on: ubuntu-latest
env:
COMPASS_API_KEY: ${{ secrets.STAGING_COMPASS_API_KEY }}
SERVER_URL: ${{ secrets.STAGING_SERVER_URL }} #https://api.compasslabs.ai/
strategy:
fail-fast: false
#max-parallel: 3 # limit concurrency
matrix: ${{ fromJson(needs.discover_sdk_snippets.outputs.items) }}

steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Setup uv and Python
uses: astral-sh/setup-uv@v5
with:
python-version: "3.12"

- name: Install dependencies (uv)
working-directory: v1/test_sdk_snippets
run: uv sync

- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'

- name: Install Node deps for TS snippets
working-directory: v1/test_sdk_snippets
run: |
npm init -y >/dev/null 2>&1 || true
npm i -D tsx
# Install the TS SDK used by snippets
npm i @compass-labs/api-sdk

- name: List installed @compass-labs/api-sdk
working-directory: v1/test_sdk_snippets
run: npm ls @compass-labs/api-sdk || true

- name: Run endpoint snippet
working-directory: v1/test_sdk_snippets
run: uv run python run_endpoint_typescript.py
env:
ENDPOINT: ${{ matrix.item }}
Loading
Loading