Thread

TK
Tigran Kostandyan9:04 PMOpen in Slack
Hi everyone! I applied for the Software Engineer role and started going through the repo and I’d love to contribute. I noticed a lot of issues seem pre-scoped for candidates already in the pipeline – would you prefer I wait for a task through the process, or is it okay to pick something up independently?

11 replies
IK
Innokentii Konstantinov (archestra team)10:10 AMOpen in Slack
Hi! You're right that the pre-scoped issues are reserved for candidates after a first call with us. However, there is no harm in picking something up except these issues in the meantime 🙂
TK
Tigran Kostandyan10:38 AMOpen in Slack
Per Claude Code's deliberate analysis, it seems like there are only a few PRs. Would you mind me taking https://github.com/archestra-ai/archestra/issues/3219?
MK
Matvey Kukuy (archestra team)11:09 AMOpen in Slack
Sure, that's ok 🙂
🙌1
TK
Tigran Kostandyan2:39 PMOpen in Slack
@user @user I'd like to ask a quick question if you don't mind 🙂 The following is referring to OpenAI API, but is true for other providers as well.
Looking at the logs, the original OpenAI error arrives at the proxy with all the right info:
"type": "invalid_request_error", "code": "context_length_exceeded"
But by the time the AI SDK sees it, the proxy has re-wrapped it via handleError -> new ApiError(400, message), which Fastify serializes as:
"type": "api_validation_error" // code field is gone
My current fix detects this by parsing the message text for "maximum context length" – which works but is fragile and couples us to provider's exact wording.
The cleaner fix in my opinion is upstream: handleError in llm-proxy-helpers.ts should pass the provider's original response body through instead of re-wrapping it. That way mapProviderError can use the already-existing context_length_exceeded code check and we don't need message parsing at all.
I wanted to check if there's a reason handleError re-wraps the body before touching it, since it's a pretty important piece of code
IK
Innokentii Konstantinov (archestra team)2:53 PMOpen in Slack
Could we add additional "internalcode" field to APIError to indicate that it's an contextlength_exceeded error?
And have a mapping of our own error codes? 0 - context_length_exceeded, .....
WDYT?
TK
Tigran Kostandyan2:59 PMOpen in Slack
@user I totally agree. Although, how do you feel about being a bit more verbose and use string values for our own error codes, instead of integers?
IK
Innokentii Konstantinov (archestra team)3:04 PMOpen in Slack
Could you clarify where AI SDK sees the error? On the frontend or backend?
IK
Innokentii Konstantinov (archestra team)3:09 PMOpen in Slack
Anyway, I don't have a strong opinion here, it's nit for now
TK
Tigran Kostandyan3:11 PMOpen in Slack
On backend
TK
Tigran Kostandyan10:30 AMOpen in Slack
@user would you mind having a look – https://github.com/archestra-ai/archestra/pull/3988?
IK
Innokentii Konstantinov (archestra team)10:58 AMOpen in Slack
Looking!