-
Notifications
You must be signed in to change notification settings - Fork 3.2k
v0.3.7: ms teams webhook, docker fixes, condition block dropdown, fixed routing with workflow block #743
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
waleedlatif1
commented
Jul 22, 2025
- fix(docker): fixed docker container healthchecks, added instructions to README for pgvector (fix(docker): fixed docker container healthchecks, added instructions to README for pgvector #735)
- fix(config): add t3 to list of transpiled packages to ensure that envvars are picked up correctly (fix(config): add t3 to list of transpiled packages to ensure that envvars are picked up correctly #737)
- fix(condition): fixed condition block dropdown (fix(condition): fixed condition block dropdown #738)
- working impl fo ms teams outgoing webhook (feat(webhooks): ms teams webhook #740)
- fix(router): fixed routing issue with workflow block, added tests (fix(router): fixed routing issue with workflow block, added tests #739)
- fix(teams-webhook): response json needs type (fix(teams-webhook): response json needs type #741)
…to README for pgvector (#735) * fixed docker container healthchecks * add additional instructions for pgvector extension to README
…vars are picked up correctly (#737)
* fixed routing issue with workflow block, added tests * add new dmeo * change console to logger * new demo * changed all console to logger
|
The latest updates on your projects. Learn more about Vercel for Git ↗︎
1 Skipped Deployment
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Greptile Summary
This PR (v0.3.7) introduces several significant improvements to the codebase:
-
Docker Container Healthchecks: Healthcheck endpoints have been updated to use dedicated
/healthendpoints instead of root paths, making container health monitoring more reliable and explicit. -
Environment Variable Handling: Added t3-oss packages to transpilePackages in Next.js config to ensure proper handling of environment variables (particularly NEXT_PUBLIC_SOCKET_URL) in production builds.
-
Microsoft Teams Integration: Implemented comprehensive Microsoft Teams webhook support with proper HMAC signature verification and response typing, following the same patterns as existing webhook providers.
-
Workflow Routing Architecture: Significantly improved routing logic by properly categorizing workflow blocks as flow control blocks, ensuring correct execution path selection and preventing unintended block executions.
-
Standardized Logging: Replaced console.log statements throughout the codebase with structured logging using createLogger, improving debugging capabilities and production observability.
Confidence score: 4/5
- The changes appear stable and well-tested, but need careful monitoring during initial deployment due to workflow routing changes.
- Score of 4 given due to comprehensive test coverage and clear architectural improvements, but the broad scope of changes (especially routing logic) warrants careful deployment monitoring.
- Key files needing extra attention:
- apps/sim/executor/routing/routing.ts
- apps/sim/blocks/blocks/webhook.ts
- docker-compose.prod.yml
34 files reviewed, 6 comments
| }) | ||
| vi.mock('@/lib/env', () => ({ | ||
| env: { | ||
| ENCRYPTION_KEY: '0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef', |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
style: consider defining the encryption key in a test constants file for reuse across test files
| systemPrompt: 'return the following in urdu roman english', | ||
| userPrompt: '<function1.result>\n<function2.result>', | ||
| model: 'gpt-4o', |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
logic: Agent's userPrompt references undefined variables - should be '<function-1.result>' and '<function-2.result>' to match block IDs
| systemPrompt: 'return the following in urdu roman english', | |
| userPrompt: '<function1.result>\n<function2.result>', | |
| model: 'gpt-4o', | |
| systemPrompt: 'return the following in urdu roman english', | |
| userPrompt: '<function-1.result>\n<function-2.result>', | |
| model: 'gpt-4o', |
| // Get the raw body for HMAC verification | ||
| const rawBody = await request.text() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
logic: Request body is consumed twice - once here and previously in the initial parsing. This could cause issues.
| // Get the raw body for HMAC verification | |
| const rawBody = await request.text() | |
| // Use the already parsed rawBody for HMAC verification | |
| // const rawBody = await request.text() // This would fail since body already consumed |
|
|
||
| // CRITICAL ASSERTIONS: | ||
| expect(function1DepMet).toBe(true) // Executed and active | ||
| expect(function2DepMet).toBe(true) // Not in active path, so considered met (line 1151) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
syntax: Comment references non-existent line 1151. Update comment to reference correct line number or remove line reference
| testResult: { | ||
| success: boolean | ||
| message?: string | ||
| test?: any |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
style: Avoid using 'any' type for test property. Consider defining a specific type for test results.
| const teamsWebhookExample = JSON.stringify( | ||
| { | ||
| type: 'message', | ||
| id: '1234567890', | ||
| timestamp: '2023-01-01T00:00:00.000Z', | ||
| localTimestamp: '2023-01-01T00:00:00.000Z', | ||
| serviceUrl: 'https://smba.trafficmanager.net/amer/', | ||
| channelId: 'msteams', | ||
| from: { | ||
| id: '29:1234567890abcdef', | ||
| name: 'John Doe', | ||
| }, | ||
| conversation: { | ||
| id: '19:meeting_abcdef@thread.v2', | ||
| }, | ||
| text: 'Hello Sim Studio Bot!', | ||
| }, | ||
| null, | ||
| 2 | ||
| ) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
style: Consider moving webhook example payload to a separate config file to keep component focused on UI logic
|
✅ No security or compliance issues detected. Reviewed everything up to e4fbb67. Security Overview
Detected Code Changes
Reply to this PR with |