-
Notifications
You must be signed in to change notification settings - Fork 3.3k
feat(i18n): update translations #1569
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
feat(i18n): update translations #1569
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
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 Overview
Summary
This PR contains automated translations of updated documentation for all supported languages (German, Spanish, French, Chinese, and Japanese) following the implementation of streaming functionality in the workflow execution API. The translations were automatically generated using Lingo.dev AI translation engine after PR #1565 added streaming support, async execution, rate limiting, and usage monitoring features to both TypeScript and Python SDKs.The changes include comprehensive updates to API trigger documentation explaining Server-Sent Events (SSE) streaming, new SDK method documentation covering async workflow execution with polling, retry mechanisms with exponential backoff, and usage limit monitoring. The translations maintain the technical structure and formatting of the original English content while adapting descriptive text to each target language.
Important Files Changed
Changed Files
| Filename | Score | Overview |
|---|---|---|
apps/docs/content/docs/zh/triggers/api.mdx |
4/5 | Added Chinese translations for streaming API functionality with proper technical terminology |
apps/docs/content/docs/de/triggers/api.mdx |
5/5 | Added German streaming API documentation with accurate technical translations |
apps/docs/content/docs/ja/sdks/python.mdx |
2/5 | Japanese Python SDK translations with multiple syntax errors in code examples |
apps/docs/content/docs/ja/triggers/api.mdx |
4/5 | Japanese API trigger translations with one minor terminology inconsistency |
apps/docs/content/docs/fr/triggers/api.mdx |
4/5 | French API trigger documentation with accurate streaming functionality translations |
apps/docs/content/docs/es/sdks/python.mdx |
2/5 | Spanish Python SDK documentation with several syntax errors in code blocks |
apps/docs/content/docs/fr/sdks/python.mdx |
2/5 | French Python SDK translations with incomplete string literals in code examples |
apps/docs/content/docs/es/triggers/api.mdx |
4/5 | Spanish API trigger translations maintaining technical accuracy and structure |
apps/docs/content/docs/de/sdks/python.mdx |
2/5 | German Python SDK documentation with syntax errors and placeholder content |
apps/docs/content/docs/de/sdks/typescript.mdx |
2/5 | German TypeScript SDK with content duplication and corrupted sections |
apps/docs/content/docs/fr/sdks/typescript.mdx |
2/5 | French TypeScript SDK with malformed code blocks and duplicated content |
apps/docs/content/docs/zh/sdks/typescript.mdx |
2/5 | Chinese TypeScript SDK with formatting issues and duplicated streaming sections |
apps/docs/content/docs/zh/sdks/python.mdx |
2/5 | Chinese Python SDK translations with multiple incomplete string literals |
apps/docs/content/docs/es/sdks/typescript.mdx |
2/5 | Spanish TypeScript SDK documentation with significant content duplication issues |
apps/docs/content/docs/ja/sdks/typescript.mdx |
2/5 | Japanese TypeScript SDK with severe content duplication and mixed language sections |
Confidence score: 2/5
- This PR has significant technical issues despite being an automated documentation translation
- Score reflects critical syntax errors in SDK code examples and content duplication issues that would break user experience
- Pay close attention to all SDK documentation files which contain broken code examples and duplicated content sections
15 files reviewed, 43 comments
| from simstudio import SimStudioClient | ||
|
|
||
| client = SimStudioClient(api_key=os.getenv("SIM_API_KEY")) | ||
| client = SimStudioClient(api_key=os.getenv("SIM_API_KEY |
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: Missing closing quote and parenthesis
| client = SimStudioClient(api_key=os.getenv("SIM_API_KEY | |
| client = SimStudioClient(api_key=os.getenv("SIM_API_KEY")) |
Prompt To Fix With AI
This is a comment left during a code review.
Path: apps/docs/content/docs/ja/sdks/python.mdx
Line: 352:352
Comment:
**syntax:** Missing closing quote and parenthesis
```suggestion
client = SimStudioClient(api_key=os.getenv("SIM_API_KEY"))
```
How can I resolve this? If you propose a fix, please make it concise.| import os | ||
|
|
||
| client = SimStudioClient(api_key=os.getenv("SIM_API_KEY")) | ||
| client = SimStudioClient(api_key=os.getenv("SIM_API_KEY") |
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: Missing closing parenthesis
| client = SimStudioClient(api_key=os.getenv("SIM_API_KEY") | |
| client = SimStudioClient(api_key=os.getenv("SIM_API_KEY")) |
Prompt To Fix With AI
This is a comment left during a code review.
Path: apps/docs/content/docs/ja/sdks/python.mdx
Line: 390:390
Comment:
**syntax:** Missing closing parenthesis
```suggestion
client = SimStudioClient(api_key=os.getenv("SIM_API_KEY"))
```
How can I resolve this? If you propose a fix, please make it concise.| import os | ||
|
|
||
| client = SimStudioClient(api_key=os.getenv("SIM_API_KEY")) | ||
| client = SimStudioClient(api_key=os.getenv("SIM_API_KEY") |
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: Missing closing parenthesis
| client = SimStudioClient(api_key=os.getenv("SIM_API_KEY") | |
| client = SimStudioClient(api_key=os.getenv("SIM_API_KEY")) |
Prompt To Fix With AI
This is a comment left during a code review.
Path: apps/docs/content/docs/ja/sdks/python.mdx
Line: 436:436
Comment:
**syntax:** Missing closing parenthesis
```suggestion
client = SimStudioClient(api_key=os.getenv("SIM_API_KEY"))
```
How can I resolve this? If you propose a fix, please make it concise.| from simstudio import SimStudioClient | ||
| import os | ||
|
|
||
| client = SimStudioClient(api_key=os.getenv("SIM_API_KEY") |
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: Missing closing parenthesis
| client = SimStudioClient(api_key=os.getenv("SIM_API_KEY") | |
| client = SimStudioClient(api_key=os.getenv("SIM_API_KEY")) |
Prompt To Fix With AI
This is a comment left during a code review.
Path: apps/docs/content/docs/ja/sdks/python.mdx
Line: 612:612
Comment:
**syntax:** Missing closing parenthesis
```suggestion
client = SimStudioClient(api_key=os.getenv("SIM_API_KEY"))
```
How can I resolve this? If you propose a fix, please make it concise.| 'https://sim.ai/api/workflows/WORKFLOW_ID/execute', | ||
| headers={ | ||
| 'Content-Type': 'application/json', | ||
| 'X-API-Key': os.getenv('SIM_API_KEY |
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: Missing closing quote
| 'X-API-Key': os.getenv('SIM_API_KEY | |
| 'X-API-Key': os.getenv('SIM_API_KEY') |
Prompt To Fix With AI
This is a comment left during a code review.
Path: apps/docs/content/docs/ja/sdks/python.mdx
Line: 663:663
Comment:
**syntax:** Missing closing quote
```suggestion
'X-API-Key': os.getenv('SIM_API_KEY')
```
How can I resolve this? If you propose a fix, please make it concise.| Apache-2.0 + limits.usage.currentPeriodCost.toFixed(2)); | ||
| console.log('Limit: |
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: Incomplete code fragment '+ limits.usage.currentPeriodCost.toFixed(2))' appears to be a formatting error
| Apache-2.0 + limits.usage.currentPeriodCost.toFixed(2)); | |
| console.log('Limit: | |
| Apache-2.0 |
Prompt To Fix With AI
This is a comment left during a code review.
Path: apps/docs/content/docs/es/sdks/typescript.mdx
Line: 990:991
Comment:
**syntax:** Incomplete code fragment '+ limits.usage.currentPeriodCost.toFixed(2))' appears to be a formatting error
```suggestion
Apache-2.0
```
How can I resolve this? If you propose a fix, please make it concise.| ``` | ||
| data: {"blockId":"7b7735b9-19e5-4bd6-818b-46aae2596e9f","chunk":"One"} | ||
| data: {"blockId":"7b7735b9-19e5-4bd6-818b-46aae2596e9f","chunk":", dos"} |
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: Translation inconsistency: 'dos' should be 'two' to match the English example pattern, or use consistent Spanish counting
Prompt To Fix With AI
This is a comment left during a code review.
Path: apps/docs/content/docs/es/sdks/typescript.mdx
Line: 852:852
Comment:
**style:** Translation inconsistency: 'dos' should be 'two' to match the English example pattern, or use consistent Spanish counting
How can I resolve this? If you propose a fix, please make it concise.| console.log('Current period cost: | ||
|
|
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: Incomplete console.log statement breaks the code example. The line appears to be cut off mid-sentence.
| console.log('Current period cost: | |
| console.log('Current period cost: ' + limits.usage.currentPeriodCost.toFixed(2)); |
Prompt To Fix With AI
This is a comment left during a code review.
Path: apps/docs/content/docs/ja/sdks/typescript.mdx
Line: 818:819
Comment:
**syntax:** Incomplete console.log statement breaks the code example. The line appears to be cut off mid-sentence.
```suggestion
console.log('Current period cost: ' + limits.usage.currentPeriodCost.toFixed(2));
```
How can I resolve this? If you propose a fix, please make it concise.| Apache-2.0 + limits.usage.currentPeriodCost.toFixed(2)); | ||
| console.log('Limit: |
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: Another incomplete console.log statement that will cause syntax errors.
| Apache-2.0 + limits.usage.currentPeriodCost.toFixed(2)); | |
| console.log('Limit: | |
| console.log('Limit: ' + limits.usage.limit.toFixed(2)); |
Prompt To Fix With AI
This is a comment left during a code review.
Path: apps/docs/content/docs/ja/sdks/typescript.mdx
Line: 990:991
Comment:
**syntax:** Another incomplete console.log statement that will cause syntax errors.
```suggestion
console.log('Limit: ' + limits.usage.limit.toFixed(2));
```
How can I resolve this? If you propose a fix, please make it concise.| ### Streaming Workflow Execution | ||
|
|
||
| Execute workflows with real-time streaming responses: | ||
|
|
||
| ```typescript | ||
| import { SimStudioClient } from 'simstudio-ts-sdk'; | ||
| const client = new SimStudioClient({ | ||
| apiKey: process.env.SIM_API_KEY! | ||
| }); | ||
| async function executeWithStreaming() { | ||
| try { | ||
| // 特定のブロック出力のストリーミングを有効にする | ||
| const result = await client.executeWorkflow('workflow-id', { | ||
| input: { message: 'Count to five' }, | ||
| stream: true, | ||
| selectedOutputs: ['agent1.content'] // blockName.attribute 形式を使用 | ||
| }); | ||
| console.log('ワークフロー結果:', result); | ||
| } catch (error) { | ||
| console.error('エラー:', error); | ||
| } | ||
| } | ||
| ``` | ||
|
|
||
| The streaming response follows the Server-Sent Events (SSE) format: | ||
|
|
||
| ``` | ||
| data: {"blockId":"7b7735b9-19e5-4bd6-818b-46aae2596e9f","chunk":"One"} | ||
| data: {"blockId":"7b7735b9-19e5-4bd6-818b-46aae2596e9f","chunk":", two"} | ||
| data: {"event":"done","success":true,"output":{},"metadata":{"duration":610}} | ||
| data: [DONE] | ||
| ``` | ||
|
|
||
| **React Streaming Example:** | ||
|
|
||
| ```typescript | ||
| import { useState, useEffect } from 'react'; | ||
| function StreamingWorkflow() { | ||
| const [output, setOutput] = useState(''); | ||
| const [loading, setLoading] = useState(false); | ||
| const executeStreaming = async () => { | ||
| setLoading(true); | ||
| setOutput(''); | ||
| // 重要: このAPIコールはブラウザではなくバックエンドサーバーから行ってください | ||
| // クライアントサイドのコードにAPIキーを公開しないでください | ||
| const response = await fetch('https://sim.ai/api/workflows/WORKFLOW_ID/execute', { | ||
| method: 'POST', | ||
| headers: { | ||
| 'Content-Type': 'application/json', | ||
| 'X-API-Key': process.env.SIM_API_KEY! // サーバーサイドの環境変数のみ | ||
| }, | ||
| body: JSON.stringify({ | ||
| message: 'Generate a story', | ||
| stream: true, | ||
| selectedOutputs: ['agent1.content'] | ||
| }) | ||
| }); | ||
| const reader = response.body?.getReader(); | ||
| const decoder = new TextDecoder(); | ||
| while (reader) { | ||
| const { done, value } = await reader.read(); | ||
| if (done) break; | ||
| const chunk = decoder.decode(value); | ||
| const lines = chunk.split('\n\n'); | ||
| for (const line of lines) { | ||
| if (line.startsWith('data: ')) { | ||
| const data = line.slice(6); | ||
| if (data === '[DONE]') { | ||
| setLoading(false); | ||
| break; | ||
| } | ||
| try { | ||
| const parsed = JSON.parse(data); | ||
| if (parsed.chunk) { | ||
| setOutput(prev => prev + parsed.chunk); | ||
| } else if (parsed.event === 'done') { | ||
| console.log('実行完了:', parsed.metadata); | ||
| } | ||
| } catch (e) { | ||
| // 無効なJSONをスキップ | ||
| } | ||
| } | ||
| } | ||
| } | ||
| }; | ||
| return ( | ||
| <div> | ||
| <button onClick={executeStreaming} disabled={loading}> | ||
| {loading ? '生成中...' : 'ストリーミング開始'} | ||
| </button> | ||
| <div style={{ whiteSpace: 'pre-wrap' }}>{output}</div> | ||
| </div> | ||
| ); | ||
| } | ||
| ``` | ||
|
|
||
| ## Getting Your API Key | ||
|
|
||
| <Steps> | ||
| <Step title="Log in to Sim"> | ||
| Navigate to [Sim](https://sim.ai) and log in to your account. | ||
| </Step> | ||
| <Step title="Open your workflow"> | ||
| Navigate to the workflow you want to execute programmatically. | ||
| </Step> | ||
| <Step title="Deploy your workflow"> | ||
| Click on "Deploy" to deploy your workflow if it hasn't been deployed yet. | ||
| </Step> | ||
| <Step title="Create or select an API key"> | ||
| During the deployment process, select or create an API key. | ||
| </Step> | ||
| <Step title="Copy the API key"> | ||
| Copy the API key to use in your TypeScript/JavaScript application. | ||
| </Step> | ||
| </Steps> | ||
|
|
||
| <Callout type="warning"> | ||
| Keep your API key secure and never commit it to version control. Use environment variables or secure configuration management. | ||
| </Callout> | ||
|
|
||
| ## Requirements | ||
|
|
||
| - Node.js 16+ | ||
| - TypeScript 5.0+ (for TypeScript projects) | ||
|
|
||
| ## TypeScript Support | ||
|
|
||
| The SDK is written in TypeScript and provides full type safety: | ||
|
|
||
| ```typescript | ||
| import { | ||
| SimStudioClient, | ||
| WorkflowExecutionResult, | ||
| WorkflowStatus, | ||
| SimStudioError | ||
| } from 'simstudio-ts-sdk'; | ||
| // 型安全なクライアント初期化 | ||
| const client: SimStudioClient = new SimStudioClient({ | ||
| apiKey: process.env.SIM_API_KEY! | ||
| }); | ||
| // 型安全なワークフロー実行 | ||
| const result: WorkflowExecutionResult = await client.executeWorkflow('workflow-id', { | ||
| input: { | ||
| message: 'Hello, TypeScript!' | ||
| } | ||
| }); | ||
| // 型安全なステータス確認 | ||
| const status: WorkflowStatus = await client.getWorkflowStatus('workflow-id'); | ||
| ``` | ||
|
|
||
| ## License | ||
|
|
||
| Apache-2.0 + limits.usage.limit.toFixed(2)); | ||
| console.log('Plan:', limits.usage.plan); | ||
|
|
||
| const percentUsed = (limits.usage.currentPeriodCost / limits.usage.limit) * 100; | ||
| console.log('Usage: ' + percentUsed.toFixed(1) + '%'); | ||
|
|
||
| if (percentUsed > 80) { | ||
| console.warn('⚠️ Warning: You are approaching your usage limit!'); | ||
| } | ||
| } catch (error) { | ||
| console.error('Error checking usage:', error); | ||
| } | ||
| } | ||
|
|
||
| checkUsage(); | ||
| ``` | ||
| ### ストリーミングワークフロー実行 | ||
| リアルタイムストリーミングレスポンスでワークフローを実行: | ||
| ```typescript | ||
| import { SimStudioClient } from 'simstudio-ts-sdk'; | ||
|
|
||
| const client = new SimStudioClient({ | ||
| apiKey: process.env.SIM_API_KEY! | ||
| }); | ||
|
|
||
| async function executeWithStreaming() { | ||
| try { | ||
| // Enable streaming for specific block outputs | ||
| const result = await client.executeWorkflow('workflow-id', { | ||
| input: { message: 'Count to five' }, | ||
| stream: true, | ||
| selectedOutputs: ['agent1.content'] // Use blockName.attribute format | ||
| }); | ||
|
|
||
| console.log('Workflow result:', result); | ||
| } catch (error) { | ||
| console.error('Error:', error); | ||
| } | ||
| } | ||
| ``` | ||
| ストリーミングレスポンスはServer-Sent Events(SSE)形式に従います: | ||
| ``` | ||
| data: {"blockId":"7b7735b9-19e5-4bd6-818b-46aae2596e9f","chunk":"One"} | ||
|
|
||
| data: {"blockId":"7b7735b9-19e5-4bd6-818b-46aae2596e9f","chunk":", two"} | ||
|
|
||
| data: {"event":"done","success":true,"output":{},"metadata":{"duration":610}} | ||
|
|
||
| data: [DONE] | ||
| ``` | ||
| **Reactストリーミング例:** | ||
| ```typescript | ||
| import { useState, useEffect } from 'react'; | ||
|
|
||
| function StreamingWorkflow() { | ||
| const [output, setOutput] = useState(''); | ||
| const [loading, setLoading] = useState(false); | ||
|
|
||
| const executeStreaming = async () => { | ||
| setLoading(true); | ||
| setOutput(''); | ||
|
|
||
| // IMPORTANT: Make this API call from your backend server, not the browser | ||
| // Never expose your API key in client-side code | ||
| const response = await fetch('https://sim.ai/api/workflows/WORKFLOW_ID/execute', { | ||
| method: 'POST', | ||
| headers: { | ||
| 'Content-Type': 'application/json', | ||
| 'X-API-Key': process.env.SIM_API_KEY! // Server-side environment variable only | ||
| }, | ||
| body: JSON.stringify({ | ||
| message: 'Generate a story', | ||
| stream: true, | ||
| selectedOutputs: ['agent1.content'] | ||
| }) | ||
| }); | ||
|
|
||
| const reader = response.body?.getReader(); | ||
| const decoder = new TextDecoder(); | ||
|
|
||
| while (reader) { | ||
| const { done, value } = await reader.read(); | ||
| if (done) break; | ||
|
|
||
| const chunk = decoder.decode(value); | ||
| const lines = chunk.split('\n\n'); | ||
|
|
||
| for (const line of lines) { | ||
| if (line.startsWith('data: ')) { | ||
| const data = line.slice(6); | ||
| if (data === '[DONE]') { | ||
| setLoading(false); | ||
| break; | ||
| } | ||
|
|
||
| try { | ||
| const parsed = JSON.parse(data); | ||
| if (parsed.chunk) { | ||
| setOutput(prev => prev + parsed.chunk); | ||
| } else if (parsed.event === 'done') { | ||
| console.log('Execution complete:', parsed.metadata); | ||
| } | ||
| } catch (e) { | ||
| // Skip invalid JSON | ||
| } | ||
| } | ||
| } | ||
| } | ||
| }; | ||
|
|
||
| return ( | ||
| <div> | ||
| <button onClick={executeStreaming} disabled={loading}> | ||
| {loading ? 'Generating...' : 'Start Streaming'} | ||
| </button> | ||
| <div style={{ whiteSpace: 'pre-wrap' }}>{output}</div> | ||
| </div> | ||
| ); | ||
| } | ||
| ``` |
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: This entire section is a duplicate of the streaming workflow execution content that appears earlier in the file.
Prompt To Fix With AI
This is a comment left during a code review.
Path: apps/docs/content/docs/ja/sdks/typescript.mdx
Line: 993:1289
Comment:
**logic:** This entire section is a duplicate of the streaming workflow execution content that appears earlier in the file.
How can I resolve this? If you propose a fix, please make it concise.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 Overview
Summary
This PR contains automated translations for multilingual documentation updates following the addition of streaming capabilities to the workflow execution API. The changes affect SDK documentation (Python and TypeScript) and API trigger documentation across five languages: Spanish (es), French (fr), Chinese (zh), Japanese (ja), and German (de). The translations were generated using Lingo.dev AI translation engine after PR #1565 added streaming functionality, async execution support, rate limiting, and usage monitoring to the Sim Studio platform.The translation updates include comprehensive new sections covering streaming responses, Server-Sent Events (SSE), request parameters like stream and selectedOutputs, multi-block streaming examples, and detailed API usage patterns. The content additions reflect significant enhancements to the SDK capabilities, including async/await patterns, exponential backoff retry logic, usage tracking with cost monitoring, and real-time streaming workflows that allow character-by-character response delivery.
Important Files Changed
Changed Files
| Filename | Score | Overview |
|---|---|---|
| apps/docs/content/docs/fr/sdks/typescript.mdx | 1/5 | Contains severe formatting corruption with duplicated content sections, incomplete code fragments, and broken syntax |
| apps/docs/content/docs/fr/triggers/api.mdx | 4/5 | Clean French translation of new streaming API functionality with proper technical terminology |
| apps/docs/content/docs/ja/triggers/api.mdx | 4/5 | Comprehensive Japanese translation of streaming features with accurate technical documentation |
| apps/docs/content/docs/es/triggers/api.mdx | 4/5 | Well-structured Spanish translation of streaming API documentation with minor terminology improvements needed |
| apps/docs/content/docs/de/triggers/api.mdx | 4/5 | Technically accurate German translation maintaining proper formatting and code examples |
| apps/docs/content/docs/zh/triggers/api.mdx | 4/5 | Complete Chinese translation with streaming functionality and minor grammar correction |
| apps/docs/content/docs/zh/sdks/python.mdx | 1/5 | Multiple critical syntax errors in Python code examples that would prevent functionality |
| apps/docs/content/docs/ja/sdks/typescript.mdx | 1/5 | Severe content duplication issues with incomplete console.log statements and mixed language content |
| apps/docs/content/docs/es/sdks/typescript.mdx | 1/5 | Critical syntax errors in code examples and massive content duplication spanning hundreds of lines |
| apps/docs/content/docs/ja/sdks/python.mdx | 2/5 | Comprehensive feature additions but with formatting inconsistencies and incomplete code blocks |
| apps/docs/content/docs/fr/sdks/python.mdx | 1/5 | Critical syntax errors in Python code blocks with missing quotes and parentheses throughout |
| apps/docs/content/docs/es/sdks/python.mdx | 2/5 | Good translation quality with appropriate terminology but critical Python syntax errors |
| apps/docs/content/docs/zh/sdks/typescript.mdx | 0/5 | Extremely corrupted file with broken code examples and extensive content duplication |
| apps/docs/content/docs/de/sdks/python.mdx | 1/5 | Multiple syntax errors and code placeholders that need replacement with actual examples |
| apps/docs/content/docs/de/sdks/typescript.mdx | 1/5 | Severe content duplication and syntax errors making the documentation unusable |
Confidence score: 1/5
- This PR contains critical syntax errors that would break code functionality and make documentation unusable for developers
- Score reflects severe formatting corruption in multiple SDK documentation files where automated translation failed to properly handle code blocks and complex technical content
- Pay immediate attention to all SDK documentation files which contain broken Python and TypeScript code examples that need manual correction before this can be safely merged
Sequence Diagram
sequenceDiagram
participant User as User
participant GH as GitHub
participant CI as CI/CD Pipeline
participant Lingo as Lingo.dev AI
participant Repo as Repository
User->>GH: "Merges PR #1565 with SDK updates"
GH->>CI: "Triggers workflow on staging merge"
CI->>Lingo: "Detects content changes in English docs"
Lingo->>Lingo: "Processes Python SDK docs"
Lingo->>Lingo: "Processes TypeScript SDK docs"
Lingo->>Lingo: "Processes API trigger docs"
Lingo->>Repo: "Generates German translations"
Lingo->>Repo: "Generates Spanish translations"
Lingo->>Repo: "Generates French translations"
Lingo->>Repo: "Generates Japanese translations"
Lingo->>Repo: "Generates Chinese translations"
Repo->>GH: "Creates auto-translate PR"
GH->>User: "PR ready for review"
15 files reviewed, no comments
6955942 to
f19747c
Compare
f19747c to
ba89249
Compare
Summary
Automated translation updates triggered by changes to documentation.
This PR was automatically created after content changes were made, updating translations for all supported languages using Lingo.dev AI translation engine.
Original trigger: feat(chat-streaming): added a
streamoption to workflow execute route, updated SDKs, updated docs (#1565)feat(chat-stream): updated workflow id execute route to support streaming via API
enable streaming via api
added only text stream option
cleanup deployed preview componnet
updated selectedOutputIds to selectedOutput
updated TS and Python SDKs with async, rate limits, usage, and streaming API routes
stream non-streaming blocks when streaming is specified
fix(chat-panel): add onBlockComplete handler to chat panel to stream back blocks as they complete
update docs
cleanup
ack PR comments
updated next config
removed getAssetUrl in favor of local assets
resolve merge conflicts
remove extra logic to create sensitive result
simplify internal auth
remove vercel blob from CSP + next config
Commit: 872e034
Workflow: https://github.com/simstudioai/sim/actions/runs/18327561530
Type of Change
Testing
This PR includes automated translations for modified English documentation content:
What reviewers should focus on:
Checklist
Screenshots/Videos