Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
52 commits
Select commit Hold shift + click to select a range
8eaa83f
fix(billing): reset usage on transition from free -> paid plan (#1397)
waleedlatif1 Sep 22, 2025
7cb303e
fix(redirects): move redirects for terms/privacy to client-side redir…
waleedlatif1 Sep 22, 2025
2f97782
feat(undo-redo): undo/redo for canvas editing (#1392)
icecrasher321 Sep 22, 2025
f1b83c1
feat(tools): added resend email sender (#1420)
waleedlatif1 Sep 23, 2025
760219d
feat(i18n): update translations (#1421)
waleedlatif1 Sep 23, 2025
68df959
feat(changelog): added changelog and gh action to auto-release (#1423)
waleedlatif1 Sep 23, 2025
b7876ca
improvement(copilot): structured metadata context + start block depre…
icecrasher321 Sep 23, 2025
6d1b172
feat(traceroot): add traceroot logger
icecrasher321 Sep 23, 2025
dd8f633
fix(instrumentation): open telemetry init (#1426)
icecrasher321 Sep 23, 2025
fbb164d
improvement(copilot): add best practices for core blocks (#1427)
icecrasher321 Sep 23, 2025
994eb8d
feat(i18n): added japanese and german translations (#1428)
waleedlatif1 Sep 23, 2025
5bb9b46
improvement(subflows): support multiple blocks in parallel subflow, e…
waleedlatif1 Sep 23, 2025
ab8d822
fix(copilot): restore subblock options (#1430)
icecrasher321 Sep 23, 2025
603b547
fix(copilot): null check simplified (#1431)
icecrasher321 Sep 23, 2025
aa0a33e
Revert "feat(traceroot): add traceroot logger" (#1434)
icecrasher321 Sep 23, 2025
0d86eaa
fix(usage): persist cost multiplier at provider level instead of also…
waleedlatif1 Sep 24, 2025
20a272c
chore(deps): remove unused deps, reduce overall dependencies & size (…
waleedlatif1 Sep 24, 2025
2ace06f
fix build error
icecrasher321 Sep 24, 2025
8ed2c5e
feat(i18n): update translations (#1437)
waleedlatif1 Sep 24, 2025
67ac3ff
chore(deps): upgrade turborepo (#1439)
waleedlatif1 Sep 24, 2025
0b2ef5e
chore(deps): added entities dependency (#1441)
waleedlatif1 Sep 24, 2025
2ee27f9
improvement: remove sentry dependency (#1435)
emir-karabeg Sep 24, 2025
094dae3
feat(copilot): add training interface (#1445)
icecrasher321 Sep 24, 2025
ca6ff7e
feat(infra): add staging docker image
Sg312 Sep 24, 2025
4268732
feat(infra): add ci for aws image push (#1447)
Sg312 Sep 25, 2025
2c7c8d5
Add dh login (#1448)
Sg312 Sep 25, 2025
928581f
feat(deployments): make deployed state source of truth for non-manual…
icecrasher321 Sep 25, 2025
d381a69
feat(ci): consolidate ci, make db migrations dependent on ecr success…
Sg312 Sep 25, 2025
c12b3d2
Remove double calling of ci (#1450)
Sg312 Sep 25, 2025
7e8ac5c
fix(ci): docker (#1451)
Sg312 Sep 25, 2025
e03c036
feat(manual-trigger): add manual trigger (#1452)
icecrasher321 Sep 25, 2025
1b7e883
fix(css-config): use correct version (#1453)
icecrasher321 Sep 25, 2025
7146ce5
feat(ci): use blacksmith for ci (#1454)
waleedlatif1 Sep 26, 2025
e49cde7
fix(ci): modify docs embeddings ci to only run on english documentati…
waleedlatif1 Sep 26, 2025
18599ac
fix(tailwind): revert tailwind back to v3 for main app (#1456)
waleedlatif1 Sep 26, 2025
f79e87e
improvement(parallel): update parallel subflow to support conditional…
waleedlatif1 Sep 26, 2025
6daeb77
feat(turbo): added turborepo, tailwind v3 (#1458)
waleedlatif1 Sep 26, 2025
97257ca
Feat(google vault): added google vault tool (#1459)
aadamgough Sep 26, 2025
c468ecb
feat(i18n): update translations (#1460)
waleedlatif1 Sep 26, 2025
d1f5c69
fix(envvars): use getEnv for isHosted check since it is client-side (…
waleedlatif1 Sep 26, 2025
0e65a8a
feat(trigger-docs): new trigger docs, function block rce imports fix …
icecrasher321 Sep 26, 2025
2ae30f1
add google vault to landing page footer (#1464)
icecrasher321 Sep 26, 2025
3ff6509
feat(i18n): update translations (#1465)
waleedlatif1 Sep 27, 2025
a63f3a3
improvement(copilot): added session context checks in copilot tool ca…
waleedlatif1 Sep 27, 2025
448e9ea
fix(tools): fixed supabase order by (#1467)
aadamgough Sep 27, 2025
bcc7537
feat(permissions): allow users to deploy workflows in all workspaces …
waleedlatif1 Sep 27, 2025
1ec5b1b
improvement(deps): remove vercel speed insights (#1470)
waleedlatif1 Sep 27, 2025
39356f3
fix(ui): standardized 404, chat, and invite pages (#1472)
waleedlatif1 Sep 27, 2025
dd1985c
improvement(chat): deployed chat no longer uses subdomains, uses sim.…
waleedlatif1 Sep 28, 2025
5ee6345
Fix(google drive): google sheets creating a file (#1476)
aadamgough Sep 28, 2025
38dd2d0
improvement(ci): ensure atomicity in trigger deploys, improve overall…
waleedlatif1 Sep 28, 2025
67c993d
fix(ci): remove atomic updates for trigger (#1478)
waleedlatif1 Sep 28, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
151 changes: 0 additions & 151 deletions .github/workflows/build.yml

This file was deleted.

107 changes: 43 additions & 64 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,74 +6,53 @@ on:
pull_request:
branches: [main, staging]

concurrency:
group: ci-${{ github.ref }}
cancel-in-progress: false

jobs:
test:
test-build:
name: Test and Build
runs-on: ubuntu-latest

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

- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version: latest

- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: latest

- name: Install dependencies
run: bun install --frozen-lockfile

- name: Run tests with coverage
env:
NODE_OPTIONS: '--no-warnings'
NEXT_PUBLIC_APP_URL: 'https://www.sim.ai'
DATABASE_URL: 'postgresql://postgres:postgres@localhost:5432/simstudio'
ENCRYPTION_KEY: '7cf672e460e430c1fba707575c2b0e2ad5a99dddf9b7b7e3b5646e630861db1c' # dummy key for CI only
run: bun run test
uses: ./.github/workflows/test-build.yml
secrets: inherit

- name: Build application
env:
NODE_OPTIONS: '--no-warnings'
NEXT_PUBLIC_APP_URL: 'https://www.sim.ai'
DATABASE_URL: 'postgresql://postgres:postgres@localhost:5432/simstudio'
STRIPE_SECRET_KEY: 'dummy_key_for_ci_only'
STRIPE_WEBHOOK_SECRET: 'dummy_secret_for_ci_only'
RESEND_API_KEY: 'dummy_key_for_ci_only'
AWS_REGION: 'us-west-2'
ENCRYPTION_KEY: '7cf672e460e430c1fba707575c2b0e2ad5a99dddf9b7b7e3b5646e630861db1c' # dummy key for CI only
run: bun run build

- name: Upload coverage to Codecov
uses: codecov/codecov-action@v5
with:
directory: ./apps/sim/coverage
fail_ci_if_error: false
verbose: true
# Build and push images (ECR for staging, ECR + GHCR for main)
build-images:
name: Build Images
needs: test-build
if: github.event_name == 'push' && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/staging')
uses: ./.github/workflows/images.yml
secrets: inherit
permissions:
contents: read
packages: write
id-token: write

# Deploy Trigger.dev (after builds complete)
trigger-deploy:
name: Deploy Trigger.dev
needs: build-images
if: github.event_name == 'push' && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/staging')
uses: ./.github/workflows/trigger-deploy.yml
secrets: inherit

# Run database migrations (depends on build completion and trigger deployment)
migrations:
name: Apply Database Migrations
runs-on: ubuntu-latest
needs: [build-images, trigger-deploy]
if: |
always() &&
github.event_name == 'push' &&
(github.ref == 'refs/heads/main' || github.ref == 'refs/heads/staging') &&
needs.build-images.result == 'success' &&
needs.trigger-deploy.result == 'success'
uses: ./.github/workflows/migrations.yml
secrets: inherit

# Process docs embeddings if needed
process-docs:
name: Process Docs
needs: migrations
if: github.event_name == 'push' && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/staging')
needs: test
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version: latest

- name: Install dependencies
run: bun install

- name: Apply migrations
working-directory: ./packages/db
env:
DATABASE_URL: ${{ github.ref == 'refs/heads/main' && secrets.DATABASE_URL || secrets.STAGING_DATABASE_URL }}
run: bunx drizzle-kit migrate --config=./drizzle.config.ts
uses: ./.github/workflows/docs-embeddings.yml
secrets: inherit
7 changes: 2 additions & 5 deletions .github/workflows/docs-embeddings.yml
Original file line number Diff line number Diff line change
@@ -1,16 +1,13 @@
name: Process Docs Embeddings

on:
push:
branches: [main, staging]
paths:
- 'apps/docs/**'
workflow_call:
workflow_dispatch: # Allow manual triggering

jobs:
process-docs-embeddings:
name: Process Documentation Embeddings
runs-on: ubuntu-latest
runs-on: blacksmith-4vcpu-ubuntu-2404
if: github.ref == 'refs/heads/main' || github.ref == 'refs/heads/staging'

steps:
Expand Down
16 changes: 12 additions & 4 deletions .github/workflows/i18n.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ permissions:

jobs:
translate:
runs-on: ubuntu-latest
runs-on: blacksmith-4vcpu-ubuntu-2404
if: github.actor != 'github-actions[bot]' # Prevent infinite loops

steps:
Expand Down Expand Up @@ -55,7 +55,7 @@ jobs:
with:
token: ${{ secrets.GH_PAT }}
commit-message: "feat(i18n): update translations"
title: "🌐 Auto-update translations"
title: "feat(i18n): update translations"
body: |
## Summary
Automated translation updates triggered by changes to documentation.
Expand All @@ -76,8 +76,10 @@ jobs:
## Testing
This PR includes automated translations for modified English documentation content:
- 🇪🇸 Spanish (es) translations
- 🇫🇷 French (fr) translations
- 🇫🇷 French (fr) translations
- 🇨🇳 Chinese (zh) translations
- 🇯🇵 Japanese (ja) translations
- 🇩🇪 German (de) translations

**What reviewers should focus on:**
- Verify translated content accuracy and context
Expand All @@ -102,7 +104,7 @@ jobs:

verify-translations:
needs: translate
runs-on: ubuntu-latest
runs-on: blacksmith-4vcpu-ubuntu-2404
if: always() # Run even if translation fails

steps:
Expand Down Expand Up @@ -137,15 +139,21 @@ jobs:
es_count=$(find content/docs/es -name "*.mdx" 2>/dev/null | wc -l || echo 0)
fr_count=$(find content/docs/fr -name "*.mdx" 2>/dev/null | wc -l || echo 0)
zh_count=$(find content/docs/zh -name "*.mdx" 2>/dev/null | wc -l || echo 0)
ja_count=$(find content/docs/ja -name "*.mdx" 2>/dev/null | wc -l || echo 0)
de_count=$(find content/docs/de -name "*.mdx" 2>/dev/null | wc -l || echo 0)

es_percentage=$((es_count * 100 / en_count))
fr_percentage=$((fr_count * 100 / en_count))
zh_percentage=$((zh_count * 100 / en_count))
ja_percentage=$((ja_count * 100 / en_count))
de_percentage=$((de_count * 100 / en_count))

echo "### Coverage Statistics" >> $GITHUB_STEP_SUMMARY
echo "- **🇬🇧 English**: $en_count files (source)" >> $GITHUB_STEP_SUMMARY
echo "- **🇪🇸 Spanish**: $es_count/$en_count files ($es_percentage%)" >> $GITHUB_STEP_SUMMARY
echo "- **🇫🇷 French**: $fr_count/$en_count files ($fr_percentage%)" >> $GITHUB_STEP_SUMMARY
echo "- **🇨🇳 Chinese**: $zh_count/$en_count files ($zh_percentage%)" >> $GITHUB_STEP_SUMMARY
echo "- **🇯🇵 Japanese**: $ja_count/$en_count files ($ja_percentage%)" >> $GITHUB_STEP_SUMMARY
echo "- **🇩🇪 German**: $de_count/$en_count files ($de_percentage%)" >> $GITHUB_STEP_SUMMARY
echo "" >> $GITHUB_STEP_SUMMARY
echo "🔄 **Auto-translation PR**: Check for new pull request with updated translations" >> $GITHUB_STEP_SUMMARY
Loading
Loading