From 46d98ebb4a7cb8b393d95e8c6887da91fdedf53f Mon Sep 17 00:00:00 2001 From: Jorge Manrubia Date: Wed, 25 Jun 2025 13:01:59 +0200 Subject: [PATCH] Refine prompt to avoid invalid JSON --- app/models/command/ai/translator.rb | 224 ++- ...and_containing_the_individual_commands.yml | 214 +++ ...st_resolve_filter_string_params_as_ids.yml | 216 +++ .../ai/translator_test-test_assign_cards.yml | 428 +++++ .../ai/translator_test-test_close_cards.yml | 854 ++++++++++ ...test-test_combine_commands_and_filters.yml | 650 +++++++ ...slator_test-test_filter_by_assignments.yml | 1285 ++++++++++++++ ...translator_test-test_filter_by_card_id.yml | 642 +++++++ ...slator_test-test_filter_by_collections.yml | 214 +++ ...nslator_test-test_filter_by_indexed_by.yml | 1499 +++++++++++++++++ .../ai/translator_test-test_filter_by_tag.yml | 859 ++++++++++ .../ai/translator_test-test_tag_cards.yml | 213 +++ ...ular_search_if_the_card_does_not_exist.yml | 214 +++ ...e_parsed_command_contains_the_raw_line.yml | 214 +++ ...quiring_a_confirmation_with_a_redirect.yml | 215 +++ 15 files changed, 7820 insertions(+), 121 deletions(-) diff --git a/app/models/command/ai/translator.rb b/app/models/command/ai/translator.rb index 47d6e5325..4717c087c 100644 --- a/app/models/command/ai/translator.rb +++ b/app/models/command/ai/translator.rb @@ -29,137 +29,119 @@ class Command::Ai::Translator def prompt <<~PROMPT - You are Fizzy’s command translator. Your task is to: - - 1. Read the user's request. - 2. Consult the current context (provided below for informational purposes only). - 3. Determine if the current context suffices or if a new context is required. - 4. Generate only the necessary commands to fulfill the request. - 5. Output a JSON object containing ONLY: - * A "context" object (required if any filtering applies — including terms — and must include all filters inside it). - * A "commands" array (only if commands are explicitly requested or clearly implied). - - Do NOT add any other properties to your JSON output. - - The description of the current view ("inside a card", "viewing a list of cards", or "not seeing cards") is informational only. Do NOT reflect this description explicitly or implicitly in your output JSON. NEVER generate properties like "view" or add "terms" based on "card" or "list" context. - - ## Fizzy Data Structure - - * **Cards**: Represent issues, features, bugs, tasks, or problems. - * Cards have **comments** and are contained within **collections**. - - ## Context Properties for Filtering (use explicitly): - - * **terms**: Array of keywords (split individually, e.g., ["some", "term"]). Avoid redundancy. Only use if the query explicitly refers to cards. - * **indexed_by**: "newest", "oldest", "latest", "stalled", "closed". - * "closed": completed cards. - * "newest": by creation date - * "latest": by update date. - * "stalled": cards that stopped showing activity after an initial activity spike. - * **assignee_ids**: Array of assignee names. - * **assignment_status**: "unassigned". - * **engagement_status**: "considering" or "doing". - * **card_ids**: Array of card IDs. - * **creator_id**: Creator's name. - * **collection_ids**: Array of explicitly mentioned collections. - * **tag_ids**: Array of tag names (use for "#tag" or "tagged with"). - - ## Explicit Filtering Rules: - - * Only use "terms" if the query explicitly refers to cards. If just searching for an expression, ALWAYS use /search. - * Numbers entered without explicit "card" or "cards" prefix should default to `terms`. - * Examples: - * "123": `terms: ["123"]` - * "card 123": `card_ids: [123]` - * "card 1,2": use `card_ids: [1, 2]` - * If the user says something like “X collection” or “collection X”, treat X as a `collection_id`. - - e.g., “writebook collection” → `collection_ids: ["writebook"]` - * "Assigned to X": use `assignee_ids`. - * "Created by X": use `creator_id`. - * "Tagged with X", "#X cards": use `tag_ids` (never "terms"). - - For example: "#design cards" or "cards tagged with #design" should always result in `tag_ids: ["design"]`. - * "Unassigned cards": use `assignment_status: "unassigned"`. - * "My cards": Cards assigned to the requester. - * "Recent cards": use `indexed_by: "newest"`. - * "Cards with recent activity": use `indexed_by: "latest"`. - * "Completed/closed cards": use `indexed_by: "closed"`. - * If cards are described as being “assigned to X” or “currently assigned to X”, treat X as an existing filter. - - For example: “close cards assigned to andy and assign them to kevin” → `assignee_ids: ["andy"]` with `/assign kevin` as a command. - - Only the first mention (“assigned to”) is a filter. The second (“assign”) is a new action. - - ## Command Interpretation Rules: - - * Unless you can clearly match the query with a command, pass the expression verbatim to /search to perform a search with it. - * When searching for nouns (singular or plural), if they don't refer to a person, favor /search with them instead of using the "terms" filter. - * Respect strictly the order of commands as the appear in the user request. - * When using /search, pass the expression to search verbatim, don't interpret it. - * "tag with #design": always `/tag #design`. Do NOT create `tag_ids` context. - * "#design cards" or "cards tagged with #design": use `tag_ids`. Do not use the /tag command in this case. - * "Assign cards tagged with #design to jz": filter by `tag_ids`, command `/assign jz`. Do NOT generate `/tag` command. - * "close as [reason]" or "close because [reason]": include the reason in the `/close` command, e.g., `/close not now`. - * "close": always `/close`, even if no reason is given or no cards are explicitly described. - - If the user just says “close”, assume they mean to close the current set of visible cards or context. - * Always generate commands in the order they appear in the query. - - ## ⚠️ Crucial Rules to Avoid Confusion: - - * **Context filters** always represent **existing conditions** that cards **already satisfy**. - * **Commands** (`/assign`, `/tag`, `/close`) represent **new actions** to apply. - * **NEVER** use names or tags mentioned in **commands** as filtering criteria. - - * E.g.: "Assign andy" means a **new assignment** to `andy`. Do NOT filter by `assignee_ids: ["andy"]`. - * E.g.: "Tag with #v2" means applying a **new tag**. Do NOT filter by `tag_ids: ["v2"]`. - - ### Examples (strictly follow these): - - User query: - `"assign andy to the current #design cards assigned to jz and tag them with #v2"` - - ✅ Correct Output: + You are Fizzy’s command translator. + ──────────────────────── OUTPUT FORMAT ──────────────────────── + Return one **valid JSON** object that matches exactly this type: + + type FizzyOutput = { + context?: { + terms?: string[]; + indexed_by?: "newest" | "oldest" | "latest" | "stalled" | "closed"; + assignee_ids?: string[]; + assignment_status?: "unassigned"; + engagement_status?: "considering" | "doing"; + card_ids?: number[]; + creator_id?: string; + collection_ids?: string[]; + tag_ids?: string[]; + }; + commands?: string[]; // each entry starts with '/' exactly + } + + If neither `context` nor `commands` is appropriate, output **exactly**: + { "commands": ["/search "] } + + -- Do **NOT** add any other top-level keys. + -- Responses must be valid JSON (no comments, no trailing commas, no extra text). + + ────────────────────── INTERNAL THINKING STEPS ─────────────────── + (Do **not** output these steps.) + 1. Decide whether the user’s request: + a. only filters existing cards → fill `context`, + b. requires actions → add `commands` in spoken order, + c. matches neither → fallback search. + 2. Emit the FizzyOutput object. + + ─────────────── DOMAIN KNOWLEDGE & INTERPRETATION RULES ─────────────── + Cards represent issues, features, bugs, tasks, or problems. + Cards have comments and live inside collections. + + Context filters describe card **state already true**. + Commands (`/assign`, `/tag`, `/close`, `/search`, `/clear`) apply **new actions**. + + Context properties you may use: + + * terms — array of keywords + * indexed_by — "newest", "oldest", "latest", "stalled", "closed" + * assignee_ids — array of assignee names + * assignment_status — "unassigned" + * engagement_status — "considering" | "doing" + * card_ids — array of card IDs + * creator_id — creator’s name + * collection_ids — array of collections + * tag_ids — array of tag names + + Explicit filtering rules + ------------------------ + * Use **terms** only if the query explicitly refers to cards; plain text searches go to `/search`. + * Numbers without the word “card(s)” default to `terms`. + * "123" → terms: ["123"] + * "card 1,2" → card_ids: [1, 2] + * “X collection” → collection_ids: ["X"] + * “Assigned to X” → assignee_ids: ["X"] + * “Created by X” → creator_id: "X" + * “Tagged with X”, “#X cards” → tag_ids: ["X"] + * “Unassigned cards” → assignment_status: "unassigned" + * “My cards” → assignee_ids of requester (if identifiable) + * “Recent cards” → indexed_by: "newest" + * “Cards with recent activity” → indexed_by: "latest" + * “Completed/closed cards” → indexed_by: "closed" + * If cards are described as “assigned to X” (state) and later “assign X” (action), **only** the first is a filter. + + Command interpretation rules + ---------------------------- + * Unless a clear command applies, fallback to `/search` with the verbatim text. + * When searching for nouns (non-person), prefer `/search` over `terms`. + * Respect the order of commands in the user’s sentence. + * “tag with #design” → `/tag #design` (not a filter) + * “#design cards” → context.tag_ids = ["design"] (no `/tag`) + * “Assign cards tagged with #design to jz” → context.tag_ids = ["design"]; command `/assign jz` + * “close as [reason]” or “close because [reason]” → `/close [reason]` + * Lone “close” → `/close` (acts on current context) + + Crucial don’ts + -------------- + * **Never** use names or tags mentioned inside commands as filters. + * **Never** add properties tied to UI view (“card”, “list”, etc.). + * **All** filters, including terms, must live inside `context`. + * Do not duplicate terms across properties. + * Avoid redundant terms. + + Positive & negative examples + ---------------------------- + **User:** assign andy to the current #design cards assigned to jz and tag them with #v2 + **Output:** { "context": { "assignee_ids": ["jz"], "tag_ids": ["design"] }, "commands": ["/assign andy", "/tag #v2"] } - - ❌ Incorrect (DO NOT generate): - + + **Incorrect (do NOT do this):** { "context": { "assignee_ids": ["andy"], "tag_ids": ["v2"] }, "commands": ["/assign andy", "/tag #v2"] } - - ## Commands (prefix '/'): - - * Assign user: `/assign [user]` - * Close cards: `/close [optional reason]` - * Tag cards: `/tag #[tag-name]` - * Clear filters: `/clear` - * Search cards: `/search [terms]` - - ## JSON Output Examples (strictly follow these patterns): - - { "context": { "assignee_ids": ["jorge"] }, "commands": ["/close"] } - { "context": { "tag_ids": ["design"] } } + + Additional examples: + { "context": { "assignee_ids": ["jorge"] }, "commands": ["/close"] } + { "context": { "tag_ids": ["design"] } } { "commands": ["/assign jorge", "/tag #design"] } - - Omit empty arrays or unnecessary properties. At least one property (`context` or `commands`) must exist. - - Never include JSON outside of "context" or "commands". E.g: this is not allowed: - - { "terms" => "some keywords" } - - It should be: - - { "context" => { "terms" => "some keywords" } } - - ## Other Strict Instructions: - - * NEVER add properties based on view descriptions ("card", "list", etc.). - * Avoid redundant terms. - * Don't duplicate terms across properties. - * All filters — including terms — must be inside the `"context"` object. - * Favor clarity, precision, and conciseness. + + Fallback search example: + { "commands": ["/search what’s blocking deploy"] } + + ──────────────────────── END OF PROMPT ──────────────────────── PROMPT end diff --git a/test/vcr_cassettes/command/ai/parser_test-test_parse_command_strings_into_a_composite_command_containing_the_individual_commands.yml b/test/vcr_cassettes/command/ai/parser_test-test_parse_command_strings_into_a_composite_command_containing_the_individual_commands.yml index 74abbf680..24d18453e 100644 --- a/test/vcr_cassettes/command/ai/parser_test-test_parse_command_strings_into_a_composite_command_containing_the_individual_commands.yml +++ b/test/vcr_cassettes/command/ai/parser_test-test_parse_command_strings_into_a_composite_command_containing_the_individual_commands.yml @@ -2204,4 +2204,218 @@ http_interactions: ZXIiOiAiZGVmYXVsdCIsCiAgInN5c3RlbV9maW5nZXJwcmludCI6ICJmcF8z ODM0M2EyZjhmIgp9Cg== recorded_at: Wed, 25 Jun 2025 10:54:09 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgbm90IHNlZWluZyBjYXJkcyB9LlxuIn0s + eyJyb2xlIjoidXNlciIsImNvbnRlbnQiOiJhc3NpZ24gQGtldmluIGFuZCBj + bG9zZSJ9XSwic3RyZWFtIjpmYWxzZSwidGVtcGVyYXR1cmUiOjAuN30= + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:38 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '384' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '393' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '497' + X-Ratelimit-Remaining-Tokens: + - '192022' + X-Ratelimit-Reset-Requests: + - 282ms + X-Ratelimit-Reset-Tokens: + - 2.393s + X-Request-Id: + - req_02876f6148001712cb8b04a105114deb + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=1fl.NPN.pzDwT.jMgLzZyRQtKUrpcEz99D1NxdARIU0-1750849298-1.0.1.1-G.jbyE_UO03O_bvfeRSIJQkji0O_PTJLqq_llHVpvw6v9qfv6jmPVeNOVnTKL6ia2n6F0U2kv1cCI8GF9Q1tGFYN0a4sL2hKXUytIqJeDsc; + path=/; expires=Wed, 25-Jun-25 11:31:38 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=op0NruAUAx5C6uuspoIlyL7Q0s_PJyjDD4oxtghf82Q-1750849298401-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7ce9eaadd7b-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBam9wdUgzR25RN0xKMWFaMGtId29s + WHQ3ciIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5NywKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogIntcbiAgXCJjb21tYW5kc1wi + OiBbXCIvYXNzaWduIGtldmluXCIsIFwiL2Nsb3NlXCJdXG59IiwKICAgICAg + ICAicmVmdXNhbCI6IG51bGwsCiAgICAgICAgImFubm90YXRpb25zIjogW10K + ICAgICAgfSwKICAgICAgImxvZ3Byb2JzIjogbnVsbCwKICAgICAgImZpbmlz + aF9yZWFzb24iOiAic3RvcCIKICAgIH0KICBdLAogICJ1c2FnZSI6IHsKICAg + ICJwcm9tcHRfdG9rZW5zIjogMTE3MCwKICAgICJjb21wbGV0aW9uX3Rva2Vu + cyI6IDE1LAogICAgInRvdGFsX3Rva2VucyI6IDExODUsCiAgICAicHJvbXB0 + X3Rva2Vuc19kZXRhaWxzIjogewogICAgICAiY2FjaGVkX3Rva2VucyI6IDEw + MjQsCiAgICAgICJhdWRpb190b2tlbnMiOiAwCiAgICB9LAogICAgImNvbXBs + ZXRpb25fdG9rZW5zX2RldGFpbHMiOiB7CiAgICAgICJyZWFzb25pbmdfdG9r + ZW5zIjogMCwKICAgICAgImF1ZGlvX3Rva2VucyI6IDAsCiAgICAgICJhY2Nl + cHRlZF9wcmVkaWN0aW9uX3Rva2VucyI6IDAsCiAgICAgICJyZWplY3RlZF9w + cmVkaWN0aW9uX3Rva2VucyI6IDAKICAgIH0KICB9LAogICJzZXJ2aWNlX3Rp + ZXIiOiAiZGVmYXVsdCIsCiAgInN5c3RlbV9maW5nZXJwcmludCI6ICJmcF8z + ODM0M2EyZjhmIgp9Cg== + recorded_at: Wed, 25 Jun 2025 11:01:38 GMT recorded_with: VCR 6.3.1 diff --git a/test/vcr_cassettes/command/ai/parser_test-test_resolve_filter_string_params_as_ids.yml b/test/vcr_cassettes/command/ai/parser_test-test_resolve_filter_string_params_as_ids.yml index 6e50c58ca..677bbdb7e 100644 --- a/test/vcr_cassettes/command/ai/parser_test-test_resolve_filter_string_params_as_ids.yml +++ b/test/vcr_cassettes/command/ai/parser_test-test_resolve_filter_string_params_as_ids.yml @@ -2227,4 +2227,220 @@ http_interactions: ZW5zIjogMAogICAgfQogIH0sCiAgInNlcnZpY2VfdGllciI6ICJkZWZhdWx0 IiwKICAic3lzdGVtX2ZpbmdlcnByaW50IjogImZwXzM4MzQzYTJmOGYiCn0K recorded_at: Wed, 25 Jun 2025 10:54:09 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgbm90IHNlZWluZyBjYXJkcyB9LlxuIn0s + eyJyb2xlIjoidXNlciIsImNvbnRlbnQiOiJjYXJkcyBhc3NpZ25lZCB0byBr + ZXZpbiwgdGFnZ2VkIHdpdGggI3dlYiwgaW4gdGhlIGNvbGxlY3Rpb24gd3Jp + dGVib29rIn1dLCJzdHJlYW0iOmZhbHNlLCJ0ZW1wZXJhdHVyZSI6MC43fQ== + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:38 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '577' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '583' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '496' + X-Ratelimit-Remaining-Tokens: + - '190871' + X-Ratelimit-Reset-Requests: + - 372ms + X-Ratelimit-Reset-Tokens: + - 2.738s + X-Request-Id: + - req_c648a949f3542c89a4fcf326128ce84f + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=PGi1TE7zqfi2GqcU1qIFtQZt2WXaJxoYWX4U1zRVe60-1750849298-1.0.1.1-PlnI3wvshFhgEkKgN2McEeFCr1yFMim4n18tDrPGbfvtOXR1mNUnk2eFnqYipEEat1LW17u9ur5.k4PiIRG.1Le.SX_nm6TE0wygKVKdgzs; + path=/; expires=Wed, 25-Jun-25 11:31:38 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=ahpC5u2sWQymQ3dI2Mgfp56JJF6LbpLD1AcSDIh5_Eo-1750849298623-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7cebf1fc6df-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBamJmeXM2ZHQwenljZ0cyMWY5Z2I2 + VlFodCIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5NywKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogIntcbiAgXCJjb250ZXh0XCI6 + IHtcbiAgICBcImFzc2lnbmVlX2lkc1wiOiBbXCJrZXZpblwiXSxcbiAgICBc + InRhZ19pZHNcIjogW1wid2ViXCJdLFxuICAgIFwiY29sbGVjdGlvbl9pZHNc + IjogW1wid3JpdGVib29rXCJdXG4gIH1cbn0iLAogICAgICAgICJyZWZ1c2Fs + IjogbnVsbCwKICAgICAgICAiYW5ub3RhdGlvbnMiOiBbXQogICAgICB9LAog + ICAgICAibG9ncHJvYnMiOiBudWxsLAogICAgICAiZmluaXNoX3JlYXNvbiI6 + ICJzdG9wIgogICAgfQogIF0sCiAgInVzYWdlIjogewogICAgInByb21wdF90 + b2tlbnMiOiAxMTgwLAogICAgImNvbXBsZXRpb25fdG9rZW5zIjogMzYsCiAg + ICAidG90YWxfdG9rZW5zIjogMTIxNiwKICAgICJwcm9tcHRfdG9rZW5zX2Rl + dGFpbHMiOiB7CiAgICAgICJjYWNoZWRfdG9rZW5zIjogMCwKICAgICAgImF1 + ZGlvX3Rva2VucyI6IDAKICAgIH0sCiAgICAiY29tcGxldGlvbl90b2tlbnNf + ZGV0YWlscyI6IHsKICAgICAgInJlYXNvbmluZ190b2tlbnMiOiAwLAogICAg + ICAiYXVkaW9fdG9rZW5zIjogMCwKICAgICAgImFjY2VwdGVkX3ByZWRpY3Rp + b25fdG9rZW5zIjogMCwKICAgICAgInJlamVjdGVkX3ByZWRpY3Rpb25fdG9r + ZW5zIjogMAogICAgfQogIH0sCiAgInNlcnZpY2VfdGllciI6ICJkZWZhdWx0 + IiwKICAic3lzdGVtX2ZpbmdlcnByaW50IjogImZwXzM4MzQzYTJmOGYiCn0K + recorded_at: Wed, 25 Jun 2025 11:01:38 GMT recorded_with: VCR 6.3.1 diff --git a/test/vcr_cassettes/command/ai/translator_test-test_assign_cards.yml b/test/vcr_cassettes/command/ai/translator_test-test_assign_cards.yml index 9b5f98a22..be3de376f 100644 --- a/test/vcr_cassettes/command/ai/translator_test-test_assign_cards.yml +++ b/test/vcr_cassettes/command/ai/translator_test-test_assign_cards.yml @@ -4166,4 +4166,432 @@ http_interactions: ZW5zIjogMAogICAgfQogIH0sCiAgInNlcnZpY2VfdGllciI6ICJkZWZhdWx0 IiwKICAic3lzdGVtX2ZpbmdlcnByaW50IjogImZwXzM4MzQzYTJmOGYiCn0K recorded_at: Wed, 25 Jun 2025 10:54:13 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50IjoiYXNzaWduIHRvIGp6 + In1dLCJzdHJlYW0iOmZhbHNlLCJ0ZW1wZXJhdHVyZSI6MC43fQ== + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:37 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '347' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '356' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '499' + X-Ratelimit-Remaining-Tokens: + - '198763' + X-Ratelimit-Reset-Requests: + - 120ms + X-Ratelimit-Reset-Tokens: + - 370ms + X-Request-Id: + - req_ee6f1152566bba270593c8c146e72f46 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=biqjtVyY7Nx.w4_TMNDhzxnbG5Cumu_mV2rxT4bGATk-1750849297-1.0.1.1-5q42wgzfbzwLjGFdmTaXBAD7vAXEraOK.z54e6mQQXFRimOFkMxUbdZ4Al1nnRhcW5Qti3WCxhxBrlE.dU7n1gIi5z0AB.zVJUVZYOtEge8; + path=/; expires=Wed, 25-Jun-25 11:31:37 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=yfOSxzeVQ.D44luRD8BMDfKCAraVE6mcljGqCk2IOhU-1750849297652-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7ca4f8ecf98-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBamNZS1Q2SWgyWG1QT3VXUnViVUxI + ZldEbSIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5NywKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogIntcbiAgXCJjb21tYW5kc1wi + OiBbXCIvYXNzaWduIGp6XCJdXG59IiwKICAgICAgICAicmVmdXNhbCI6IG51 + bGwsCiAgICAgICAgImFubm90YXRpb25zIjogW10KICAgICAgfSwKICAgICAg + ImxvZ3Byb2JzIjogbnVsbCwKICAgICAgImZpbmlzaF9yZWFzb24iOiAic3Rv + cCIKICAgIH0KICBdLAogICJ1c2FnZSI6IHsKICAgICJwcm9tcHRfdG9rZW5z + IjogMTE3MCwKICAgICJjb21wbGV0aW9uX3Rva2VucyI6IDEyLAogICAgInRv + dGFsX3Rva2VucyI6IDExODIsCiAgICAicHJvbXB0X3Rva2Vuc19kZXRhaWxz + IjogewogICAgICAiY2FjaGVkX3Rva2VucyI6IDAsCiAgICAgICJhdWRpb190 + b2tlbnMiOiAwCiAgICB9LAogICAgImNvbXBsZXRpb25fdG9rZW5zX2RldGFp + bHMiOiB7CiAgICAgICJyZWFzb25pbmdfdG9rZW5zIjogMCwKICAgICAgImF1 + ZGlvX3Rva2VucyI6IDAsCiAgICAgICJhY2NlcHRlZF9wcmVkaWN0aW9uX3Rv + a2VucyI6IDAsCiAgICAgICJyZWplY3RlZF9wcmVkaWN0aW9uX3Rva2VucyI6 + IDAKICAgIH0KICB9LAogICJzZXJ2aWNlX3RpZXIiOiAiZGVmYXVsdCIsCiAg + InN5c3RlbV9maW5nZXJwcmludCI6ICJmcF8zODM0M2EyZjhmIgp9Cg== + recorded_at: Wed, 25 Jun 2025 11:01:37 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgaW5zaWRlIGEgY2FyZCB9LlxuIn0seyJy + b2xlIjoidXNlciIsImNvbnRlbnQiOiJhc3NpZ24gY2FyZHMgYWdnZWQgd2l0 + aCAjZGVzaWduIHRvIGp6In1dLCJzdHJlYW0iOmZhbHNlLCJ0ZW1wZXJhdHVy + ZSI6MC43fQ== + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:38 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '457' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '462' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '496' + X-Ratelimit-Remaining-Tokens: + - '191028' + X-Ratelimit-Reset-Requests: + - 476ms + X-Ratelimit-Reset-Tokens: + - 2.691s + X-Request-Id: + - req_472777fb44b3bd136040b39c287e9108 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=2QoJyINakCIfnZR55u1XT2r7d6KxtvahrYqTztxMyBM-1750849298-1.0.1.1-R7soH4rp.3UVX9bu319jAMJGyTm.fQ1CkZTXDQ6bJgl5YELzq90bT.pgRLzLZdzIw8JEvUOD2CbuD14Ic0p3uGrEDcsxDhSs601jwewfH5A; + path=/; expires=Wed, 25-Jun-25 11:31:38 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=EX0AGB2HNokavQhwSiqbqnHOEaBTsetULj3IEhOCvTk-1750849298445-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7ceadd90327-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBaldza0ZHTVBtSjlnUWF4YVZoYVU1 + MktzUCIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5NywKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogIntcbiAgXCJjb250ZXh0XCI6 + IHsgXCJ0YWdfaWRzXCI6IFtcImRlc2lnblwiXSB9LFxuICBcImNvbW1hbmRz + XCI6IFtcIi9hc3NpZ24ganpcIl1cbn0iLAogICAgICAgICJyZWZ1c2FsIjog + bnVsbCwKICAgICAgICAiYW5ub3RhdGlvbnMiOiBbXQogICAgICB9LAogICAg + ICAibG9ncHJvYnMiOiBudWxsLAogICAgICAiZmluaXNoX3JlYXNvbiI6ICJz + dG9wIgogICAgfQogIF0sCiAgInVzYWdlIjogewogICAgInByb21wdF90b2tl + bnMiOiAxMTc0LAogICAgImNvbXBsZXRpb25fdG9rZW5zIjogMjUsCiAgICAi + dG90YWxfdG9rZW5zIjogMTE5OSwKICAgICJwcm9tcHRfdG9rZW5zX2RldGFp + bHMiOiB7CiAgICAgICJjYWNoZWRfdG9rZW5zIjogMCwKICAgICAgImF1ZGlv + X3Rva2VucyI6IDAKICAgIH0sCiAgICAiY29tcGxldGlvbl90b2tlbnNfZGV0 + YWlscyI6IHsKICAgICAgInJlYXNvbmluZ190b2tlbnMiOiAwLAogICAgICAi + YXVkaW9fdG9rZW5zIjogMCwKICAgICAgImFjY2VwdGVkX3ByZWRpY3Rpb25f + dG9rZW5zIjogMCwKICAgICAgInJlamVjdGVkX3ByZWRpY3Rpb25fdG9rZW5z + IjogMAogICAgfQogIH0sCiAgInNlcnZpY2VfdGllciI6ICJkZWZhdWx0IiwK + ICAic3lzdGVtX2ZpbmdlcnByaW50IjogImZwXzM4MzQzYTJmOGYiCn0K + recorded_at: Wed, 25 Jun 2025 11:01:38 GMT recorded_with: VCR 6.3.1 diff --git a/test/vcr_cassettes/command/ai/translator_test-test_close_cards.yml b/test/vcr_cassettes/command/ai/translator_test-test_close_cards.yml index 76a032093..9c809e505 100644 --- a/test/vcr_cassettes/command/ai/translator_test-test_close_cards.yml +++ b/test/vcr_cassettes/command/ai/translator_test-test_close_cards.yml @@ -7838,4 +7838,858 @@ http_interactions: MAogICAgfQogIH0sCiAgInNlcnZpY2VfdGllciI6ICJkZWZhdWx0IiwKICAi c3lzdGVtX2ZpbmdlcnByaW50IjogImZwXzM4MzQzYTJmOGYiCn0K recorded_at: Wed, 25 Jun 2025 10:54:15 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50IjoiY2xvc2UifV0sInN0 + cmVhbSI6ZmFsc2UsInRlbXBlcmF0dXJlIjowLjd9 + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:37 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '284' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '288' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '499' + X-Ratelimit-Remaining-Tokens: + - '198468' + X-Ratelimit-Reset-Requests: + - 120ms + X-Ratelimit-Reset-Tokens: + - 459ms + X-Request-Id: + - req_234354d2b39a52dfed9c9e56708e7762 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=RrH33GTd57KISPAyUXmMF6pp7aRd1.p4CzJUeyf29rY-1750849297-1.0.1.1-tH3A9am_8_6qsIlZWUwaTQ8KXlLphkJeNna3tOg9WLP..AbTTlYiz89TZ_M08iS_ZNtBgl2Wg9r81RLKsX25wvKdxz6CLN9GKSGCVfIHIK4; + path=/; expires=Wed, 25-Jun-25 11:31:37 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=Q5cct0hyZgnmsAMpGiRshSDNGeehQW5l8tMjtqNh12Y-1750849297632-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7ca887403c9-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBampQamhXWk1EMmtWMzRVMHp6RWw3 + RG5IUiIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5NywKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogInsgXCJjb21tYW5kc1wiOiBb + XCIvY2xvc2VcIl0gfSIsCiAgICAgICAgInJlZnVzYWwiOiBudWxsLAogICAg + ICAgICJhbm5vdGF0aW9ucyI6IFtdCiAgICAgIH0sCiAgICAgICJsb2dwcm9i + cyI6IG51bGwsCiAgICAgICJmaW5pc2hfcmVhc29uIjogInN0b3AiCiAgICB9 + CiAgXSwKICAidXNhZ2UiOiB7CiAgICAicHJvbXB0X3Rva2VucyI6IDExNjcs + CiAgICAiY29tcGxldGlvbl90b2tlbnMiOiA5LAogICAgInRvdGFsX3Rva2Vu + cyI6IDExNzYsCiAgICAicHJvbXB0X3Rva2Vuc19kZXRhaWxzIjogewogICAg + ICAiY2FjaGVkX3Rva2VucyI6IDEwMjQsCiAgICAgICJhdWRpb190b2tlbnMi + OiAwCiAgICB9LAogICAgImNvbXBsZXRpb25fdG9rZW5zX2RldGFpbHMiOiB7 + CiAgICAgICJyZWFzb25pbmdfdG9rZW5zIjogMCwKICAgICAgImF1ZGlvX3Rv + a2VucyI6IDAsCiAgICAgICJhY2NlcHRlZF9wcmVkaWN0aW9uX3Rva2VucyI6 + IDAsCiAgICAgICJyZWplY3RlZF9wcmVkaWN0aW9uX3Rva2VucyI6IDAKICAg + IH0KICB9LAogICJzZXJ2aWNlX3RpZXIiOiAiZGVmYXVsdCIsCiAgInN5c3Rl + bV9maW5nZXJwcmludCI6ICJmcF8zODM0M2EyZjhmIgp9Cg== + recorded_at: Wed, 25 Jun 2025 11:01:37 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50IjoiY2xvc2UgYXMgbm90 + IG5vdyJ9XSwic3RyZWFtIjpmYWxzZSwidGVtcGVyYXR1cmUiOjAuN30= + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:38 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '305' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '311' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '495' + X-Ratelimit-Remaining-Tokens: + - '190126' + X-Ratelimit-Reset-Requests: + - 524ms + X-Ratelimit-Reset-Tokens: + - 2.962s + X-Request-Id: + - req_4719ee150bafd36fc85492218baaafed + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=g0o5mST420D7CF3zr.7GoYU_kUKxFbemtwjfqwaDBBI-1750849298-1.0.1.1-N8EdH.Tl2LVPymd6TMWBLxnMX8D.kTwNenoWiYEz14ofpYuIku._mQUqVGGhFn.7DWD4fcLpmNs_4lC354VUKX7DJseedgkF5oIoIN0noRE; + path=/; expires=Wed, 25-Jun-25 11:31:38 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=rmYijfOeH15N0.Y9rLNh7MbO6PiC2Ug7WfaFWquPBO8-1750849298278-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7ce8e69f770-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBano3Vnphckh4c2tQZkdacFJOMEVm + N2I2TSIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5NywKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogIntcImNvbW1hbmRzXCI6IFtc + Ii9jbG9zZSBub3Qgbm93XCJdfSIsCiAgICAgICAgInJlZnVzYWwiOiBudWxs + LAogICAgICAgICJhbm5vdGF0aW9ucyI6IFtdCiAgICAgIH0sCiAgICAgICJs + b2dwcm9icyI6IG51bGwsCiAgICAgICJmaW5pc2hfcmVhc29uIjogInN0b3Ai + CiAgICB9CiAgXSwKICAidXNhZ2UiOiB7CiAgICAicHJvbXB0X3Rva2VucyI6 + IDExNzAsCiAgICAiY29tcGxldGlvbl90b2tlbnMiOiAxMCwKICAgICJ0b3Rh + bF90b2tlbnMiOiAxMTgwLAogICAgInByb21wdF90b2tlbnNfZGV0YWlscyI6 + IHsKICAgICAgImNhY2hlZF90b2tlbnMiOiAxMDI0LAogICAgICAiYXVkaW9f + dG9rZW5zIjogMAogICAgfSwKICAgICJjb21wbGV0aW9uX3Rva2Vuc19kZXRh + aWxzIjogewogICAgICAicmVhc29uaW5nX3Rva2VucyI6IDAsCiAgICAgICJh + dWRpb190b2tlbnMiOiAwLAogICAgICAiYWNjZXB0ZWRfcHJlZGljdGlvbl90 + b2tlbnMiOiAwLAogICAgICAicmVqZWN0ZWRfcHJlZGljdGlvbl90b2tlbnMi + OiAwCiAgICB9CiAgfSwKICAic2VydmljZV90aWVyIjogImRlZmF1bHQiLAog + ICJzeXN0ZW1fZmluZ2VycHJpbnQiOiAiZnBfMzgzNDNhMmY4ZiIKfQo= + recorded_at: Wed, 25 Jun 2025 11:01:38 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50IjoiY2xvc2UgY2FyZHMg + YXNzaWduZWQgdG8ganoifV0sInN0cmVhbSI6ZmFsc2UsInRlbXBlcmF0dXJl + IjowLjd9 + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:39 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '440' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '445' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '494' + X-Ratelimit-Remaining-Tokens: + - '183223' + X-Ratelimit-Reset-Requests: + - 644ms + X-Ratelimit-Reset-Tokens: + - 5.032s + X-Request-Id: + - req_f6828e743bf3b0e851e166b3d88c4420 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=k2h9wZAKJvqb2SE11u.wE68zWGOqn5FGXlNo2cZIxko-1750849299-1.0.1.1-_oZ_BaaDvxszIxJUIRZk64s9qH0VgziID_l8jRnd10wTeTUQFymmOCmiYyZZS7V9QzJSa6c_OcHD2OxesnxYPgc3Z.zG_GS0wXr.ZxvRKOQ; + path=/; expires=Wed, 25-Jun-25 11:31:39 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=WHsxc.ORQCnseh9MsVpPYE9rqALy7ArmnZHlJknsa.8-1750849299299-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7d3e857cf98-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBa2tRM1dHRDNMTlJCNlBDeXF0VkhD + NWhRciIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5OCwKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogIntcbiAgXCJjb250ZXh0XCI6 + IHsgXCJhc3NpZ25lZV9pZHNcIjogW1wianpcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvY2xvc2VcIl1cbn0iLAogICAgICAgICJyZWZ1c2FsIjogbnVs + bCwKICAgICAgICAiYW5ub3RhdGlvbnMiOiBbXQogICAgICB9LAogICAgICAi + bG9ncHJvYnMiOiBudWxsLAogICAgICAiZmluaXNoX3JlYXNvbiI6ICJzdG9w + IgogICAgfQogIF0sCiAgInVzYWdlIjogewogICAgInByb21wdF90b2tlbnMi + OiAxMTcyLAogICAgImNvbXBsZXRpb25fdG9rZW5zIjogMjUsCiAgICAidG90 + YWxfdG9rZW5zIjogMTE5NywKICAgICJwcm9tcHRfdG9rZW5zX2RldGFpbHMi + OiB7CiAgICAgICJjYWNoZWRfdG9rZW5zIjogMTAyNCwKICAgICAgImF1ZGlv + X3Rva2VucyI6IDAKICAgIH0sCiAgICAiY29tcGxldGlvbl90b2tlbnNfZGV0 + YWlscyI6IHsKICAgICAgInJlYXNvbmluZ190b2tlbnMiOiAwLAogICAgICAi + YXVkaW9fdG9rZW5zIjogMCwKICAgICAgImFjY2VwdGVkX3ByZWRpY3Rpb25f + dG9rZW5zIjogMCwKICAgICAgInJlamVjdGVkX3ByZWRpY3Rpb25fdG9rZW5z + IjogMAogICAgfQogIH0sCiAgInNlcnZpY2VfdGllciI6ICJkZWZhdWx0IiwK + ICAic3lzdGVtX2ZpbmdlcnByaW50IjogImZwXzM4MzQzYTJmOGYiCn0K + recorded_at: Wed, 25 Jun 2025 11:01:39 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgaW5zaWRlIGEgY2FyZCB9LlxuIn0seyJy + b2xlIjoidXNlciIsImNvbnRlbnQiOiJjbG9zZSJ9XSwic3RyZWFtIjpmYWxz + ZSwidGVtcGVyYXR1cmUiOjAuN30= + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:39 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '266' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '270' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '496' + X-Ratelimit-Remaining-Tokens: + - '179911' + X-Ratelimit-Reset-Requests: + - 422ms + X-Ratelimit-Reset-Tokens: + - 6.026s + X-Request-Id: + - req_685e4017bf295f6d25c93d89a2a37f13 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=DxCt4prAkeMXq0V6ldc1nN0GI8Jtc7MHNI4y2Kh4omk-1750849299-1.0.1.1-wl3PlCbUGhlqbtoYsljiOIWW7JrgAr0xE9UUoqShrlYsBosSnlGn.XKQ10dU_tGFtuJl0wJ91x_pyvmT72BKdK5Qjkap4DmvBxC21Y0ccMg; + path=/; expires=Wed, 25-Jun-25 11:31:39 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=E0NnIUtozKQvAEkosua9haTPt.Npb2qjwaYSKuKkUPI-1750849299967-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7d8f83e0727-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBbHNEbHhSQkhRU213cnd4bjlIblda + aWdEVSIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5OSwKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogInsgXCJjb21tYW5kc1wiOiBb + XCIvY2xvc2VcIl0gfSIsCiAgICAgICAgInJlZnVzYWwiOiBudWxsLAogICAg + ICAgICJhbm5vdGF0aW9ucyI6IFtdCiAgICAgIH0sCiAgICAgICJsb2dwcm9i + cyI6IG51bGwsCiAgICAgICJmaW5pc2hfcmVhc29uIjogInN0b3AiCiAgICB9 + CiAgXSwKICAidXNhZ2UiOiB7CiAgICAicHJvbXB0X3Rva2VucyI6IDExNjUs + CiAgICAiY29tcGxldGlvbl90b2tlbnMiOiA5LAogICAgInRvdGFsX3Rva2Vu + cyI6IDExNzQsCiAgICAicHJvbXB0X3Rva2Vuc19kZXRhaWxzIjogewogICAg + ICAiY2FjaGVkX3Rva2VucyI6IDEwMjQsCiAgICAgICJhdWRpb190b2tlbnMi + OiAwCiAgICB9LAogICAgImNvbXBsZXRpb25fdG9rZW5zX2RldGFpbHMiOiB7 + CiAgICAgICJyZWFzb25pbmdfdG9rZW5zIjogMCwKICAgICAgImF1ZGlvX3Rv + a2VucyI6IDAsCiAgICAgICJhY2NlcHRlZF9wcmVkaWN0aW9uX3Rva2VucyI6 + IDAsCiAgICAgICJyZWplY3RlZF9wcmVkaWN0aW9uX3Rva2VucyI6IDAKICAg + IH0KICB9LAogICJzZXJ2aWNlX3RpZXIiOiAiZGVmYXVsdCIsCiAgInN5c3Rl + bV9maW5nZXJwcmludCI6ICJmcF8zODM0M2EyZjhmIgp9Cg== + recorded_at: Wed, 25 Jun 2025 11:01:39 GMT recorded_with: VCR 6.3.1 diff --git a/test/vcr_cassettes/command/ai/translator_test-test_combine_commands_and_filters.yml b/test/vcr_cassettes/command/ai/translator_test-test_combine_commands_and_filters.yml index df76aa1c5..6dd464127 100644 --- a/test/vcr_cassettes/command/ai/translator_test-test_combine_commands_and_filters.yml +++ b/test/vcr_cassettes/command/ai/translator_test-test_combine_commands_and_filters.yml @@ -6197,4 +6197,654 @@ http_interactions: bnMiOiAwCiAgICB9CiAgfSwKICAic2VydmljZV90aWVyIjogImRlZmF1bHQi LAogICJzeXN0ZW1fZmluZ2VycHJpbnQiOiAiZnBfMzgzNDNhMmY4ZiIKfQo= recorded_at: Wed, 25 Jun 2025 10:54:14 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50IjoiYXNzaWduIGFuZHkg + dG8gdGhlIGN1cnJlbnQgI2Rlc2lnbiBjYXJkcyBhc3NpZ25lZCB0byBqeiBh + bmQgdGFnIHRoZW0gd2l0aCAjdjIifV0sInN0cmVhbSI6ZmFsc2UsInRlbXBl + cmF0dXJlIjowLjd9 + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:38 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '689' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '1441' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '499' + X-Ratelimit-Remaining-Tokens: + - '198291' + X-Ratelimit-Reset-Requests: + - 120ms + X-Ratelimit-Reset-Tokens: + - 512ms + X-Request-Id: + - req_4269e3d66b27d8223a12628b0b00c224 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=pV.sy7JqilsC2KfOtyUb_6wz8jfYxD29oXiUow9hg9k-1750849298-1.0.1.1-JBeCcx20inbeneKu9AUuWoDCVPyG.EDhc4.yKt5Z9r_YGQ2.4j7j28ES7ARg8R_zLMTYqJPnuFt4PGQhKGn3iZa6AlmMGttKi13jCDaAdD0; + path=/; expires=Wed, 25-Jun-25 11:31:38 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=VZQSZqa3sq9NmHnJyCMIPrhCVtnWSdTB.CNRNIidUnc-1750849298724-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7ca48c0c909-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBa0JJRm5wRlI0U1QzSGRYMXloT3kz + UzZlSCIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5OCwKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogIntcbiAgXCJjb250ZXh0XCI6 + IHsgXCJhc3NpZ25lZV9pZHNcIjogW1wianpcIl0sIFwidGFnX2lkc1wiOiBb + XCJkZXNpZ25cIl0gfSxcbiAgXCJjb21tYW5kc1wiOiBbXCIvYXNzaWduIGFu + ZHlcIiwgXCIvdGFnICN2MlwiXVxufSIsCiAgICAgICAgInJlZnVzYWwiOiBu + dWxsLAogICAgICAgICJhbm5vdGF0aW9ucyI6IFtdCiAgICAgIH0sCiAgICAg + ICJsb2dwcm9icyI6IG51bGwsCiAgICAgICJmaW5pc2hfcmVhc29uIjogInN0 + b3AiCiAgICB9CiAgXSwKICAidXNhZ2UiOiB7CiAgICAicHJvbXB0X3Rva2Vu + cyI6IDExODYsCiAgICAiY29tcGxldGlvbl90b2tlbnMiOiA0MCwKICAgICJ0 + b3RhbF90b2tlbnMiOiAxMjI2LAogICAgInByb21wdF90b2tlbnNfZGV0YWls + cyI6IHsKICAgICAgImNhY2hlZF90b2tlbnMiOiAxMDI0LAogICAgICAiYXVk + aW9fdG9rZW5zIjogMAogICAgfSwKICAgICJjb21wbGV0aW9uX3Rva2Vuc19k + ZXRhaWxzIjogewogICAgICAicmVhc29uaW5nX3Rva2VucyI6IDAsCiAgICAg + ICJhdWRpb190b2tlbnMiOiAwLAogICAgICAiYWNjZXB0ZWRfcHJlZGljdGlv + bl90b2tlbnMiOiAwLAogICAgICAicmVqZWN0ZWRfcHJlZGljdGlvbl90b2tl + bnMiOiAwCiAgICB9CiAgfSwKICAic2VydmljZV90aWVyIjogImRlZmF1bHQi + LAogICJzeXN0ZW1fZmluZ2VycHJpbnQiOiAiZnBfMzgzNDNhMmY4ZiIKfQo= + recorded_at: Wed, 25 Jun 2025 11:01:38 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50IjoiY2xvc2UgY2FyZHMg + YXNzaWduZWQgdG8gYW5keSBhbmQgYXNzaWduIHRoZW0gdG8ga2V2aW4ifV0s + InN0cmVhbSI6ZmFsc2UsInRlbXBlcmF0dXJlIjowLjd9 + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:39 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '499' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '508' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '491' + X-Ratelimit-Remaining-Tokens: + - '179075' + X-Ratelimit-Reset-Requests: + - 965ms + X-Ratelimit-Reset-Tokens: + - 6.277s + X-Request-Id: + - req_a43e5c61ba8d0e759405a9e1bef276c5 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=R2U21_dkykIif6qnfxtKL7V1V4a9vWxMmRJw6LZl2gs-1750849299-1.0.1.1-j.ee6IwoAzxnQQslBmlpy76IMGDE1Z3lrs69I6spGyeXjBTxxlrvTjKgv6m9GCQDQzrpzaBFI.schZxGk.WdDhM4Z4qgSxQdIBuE9N2SyFQ; + path=/; expires=Wed, 25-Jun-25 11:31:39 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=iLIe0gdXV1np06Y5136.5XBoIn3eObFJq.fHWt1jK40-1750849299557-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7d56980d58e-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBa3loR29BRVZPRXBmWTRDanhUQzZr + MFNwTiIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5OCwKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogIntcbiAgXCJjb250ZXh0XCI6 + IHsgXCJhc3NpZ25lZV9pZHNcIjogW1wiYW5keVwiXSB9LFxuICBcImNvbW1h + bmRzXCI6IFtcIi9jbG9zZVwiLCBcIi9hc3NpZ24ga2V2aW5cIl1cbn0iLAog + ICAgICAgICJyZWZ1c2FsIjogbnVsbCwKICAgICAgICAiYW5ub3RhdGlvbnMi + OiBbXQogICAgICB9LAogICAgICAibG9ncHJvYnMiOiBudWxsLAogICAgICAi + ZmluaXNoX3JlYXNvbiI6ICJzdG9wIgogICAgfQogIF0sCiAgInVzYWdlIjog + ewogICAgInByb21wdF90b2tlbnMiOiAxMTc4LAogICAgImNvbXBsZXRpb25f + dG9rZW5zIjogMjksCiAgICAidG90YWxfdG9rZW5zIjogMTIwNywKICAgICJw + cm9tcHRfdG9rZW5zX2RldGFpbHMiOiB7CiAgICAgICJjYWNoZWRfdG9rZW5z + IjogMTAyNCwKICAgICAgImF1ZGlvX3Rva2VucyI6IDAKICAgIH0sCiAgICAi + Y29tcGxldGlvbl90b2tlbnNfZGV0YWlscyI6IHsKICAgICAgInJlYXNvbmlu + Z190b2tlbnMiOiAwLAogICAgICAiYXVkaW9fdG9rZW5zIjogMCwKICAgICAg + ImFjY2VwdGVkX3ByZWRpY3Rpb25fdG9rZW5zIjogMCwKICAgICAgInJlamVj + dGVkX3ByZWRpY3Rpb25fdG9rZW5zIjogMAogICAgfQogIH0sCiAgInNlcnZp + Y2VfdGllciI6ICJkZWZhdWx0IiwKICAic3lzdGVtX2ZpbmdlcnByaW50Ijog + ImZwXzM4MzQzYTJmOGYiCn0K + recorded_at: Wed, 25 Jun 2025 11:01:39 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50IjoiYXNzaWduIGNhcmRz + IHRhZ2dlZCB3aXRoICNkZXNpZ24gYXNzaWduZWQgdG8ganogdG8gYW5keSBh + bmQgdGFnIHRoZW0gd2l0aCAjdjIifV0sInN0cmVhbSI6ZmFsc2UsInRlbXBl + cmF0dXJlIjowLjd9 + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:40 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '468' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '471' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '492' + X-Ratelimit-Remaining-Tokens: + - '173477' + X-Ratelimit-Reset-Requests: + - 949ms + X-Ratelimit-Reset-Tokens: + - 7.956s + X-Request-Id: + - req_93b143ee33a31b52ed27b223c79eedb5 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=ZwAEvK5Ursftu5QpQYYUF3oEreIo2EpLBG52i3SfIiE-1750849300-1.0.1.1-MXtbZzN.xvU6ha3lbiSZPoeAubmMMIgjRt2IJO4K660.ZKUXw7z.GyTV5HMDoPD0aZMI6Z.FXleMZfQCNkpW7xVqP.zW.l8iUvcW.WFAKyA; + path=/; expires=Wed, 25-Jun-25 11:31:40 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=aGsoMQyJ.Q6HwLILwKb8wjGO3.1eCIoldw9SlBwrMPc-1750849300242-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7da9c6acc70-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBbDQ1b0hHR1B1RmJqZUtIdFNld3lP + WDZ5NSIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5OSwKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogIntcbiAgXCJjb250ZXh0XCI6 + IHsgXCJ0YWdfaWRzXCI6IFtcImRlc2lnblwiXSwgXCJhc3NpZ25lZV9pZHNc + IjogW1wianpcIl0gfSxcbiAgXCJjb21tYW5kc1wiOiBbXCIvYXNzaWduIGFu + ZHlcIiwgXCIvdGFnICN2MlwiXVxufSIsCiAgICAgICAgInJlZnVzYWwiOiBu + dWxsLAogICAgICAgICJhbm5vdGF0aW9ucyI6IFtdCiAgICAgIH0sCiAgICAg + ICJsb2dwcm9icyI6IG51bGwsCiAgICAgICJmaW5pc2hfcmVhc29uIjogInN0 + b3AiCiAgICB9CiAgXSwKICAidXNhZ2UiOiB7CiAgICAicHJvbXB0X3Rva2Vu + cyI6IDExODYsCiAgICAiY29tcGxldGlvbl90b2tlbnMiOiA0MCwKICAgICJ0 + b3RhbF90b2tlbnMiOiAxMjI2LAogICAgInByb21wdF90b2tlbnNfZGV0YWls + cyI6IHsKICAgICAgImNhY2hlZF90b2tlbnMiOiAxMDI0LAogICAgICAiYXVk + aW9fdG9rZW5zIjogMAogICAgfSwKICAgICJjb21wbGV0aW9uX3Rva2Vuc19k + ZXRhaWxzIjogewogICAgICAicmVhc29uaW5nX3Rva2VucyI6IDAsCiAgICAg + ICJhdWRpb190b2tlbnMiOiAwLAogICAgICAiYWNjZXB0ZWRfcHJlZGljdGlv + bl90b2tlbnMiOiAwLAogICAgICAicmVqZWN0ZWRfcHJlZGljdGlvbl90b2tl + bnMiOiAwCiAgICB9CiAgfSwKICAic2VydmljZV90aWVyIjogImRlZmF1bHQi + LAogICJzeXN0ZW1fZmluZ2VycHJpbnQiOiAiZnBfMzgzNDNhMmY4ZiIKfQo= + recorded_at: Wed, 25 Jun 2025 11:01:40 GMT recorded_with: VCR 6.3.1 diff --git a/test/vcr_cassettes/command/ai/translator_test-test_filter_by_assignments.yml b/test/vcr_cassettes/command/ai/translator_test-test_filter_by_assignments.yml index e740297d0..8d74fc660 100644 --- a/test/vcr_cassettes/command/ai/translator_test-test_filter_by_assignments.yml +++ b/test/vcr_cassettes/command/ai/translator_test-test_filter_by_assignments.yml @@ -11784,4 +11784,1289 @@ http_interactions: IjogImRlZmF1bHQiLAogICJzeXN0ZW1fZmluZ2VycHJpbnQiOiAiZnBfMzgz NDNhMmY4ZiIKfQo= recorded_at: Wed, 25 Jun 2025 10:54:16 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50IjoiY2FyZHMgYXNzaWdu + ZWQgdG8ganoifV0sInN0cmVhbSI6ZmFsc2UsInRlbXBlcmF0dXJlIjowLjd9 + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:37 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '495' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '688' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '499' + X-Ratelimit-Remaining-Tokens: + - '198762' + X-Ratelimit-Reset-Requests: + - 120ms + X-Ratelimit-Reset-Tokens: + - 371ms + X-Request-Id: + - req_f43db4d120c560d2b415fec8db441554 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=NRjMLz3ioNiMf.mBsY_5g9elga3ui7PsrgdL0IyqyYE-1750849297-1.0.1.1-snlmUCQw3FewwB6LGR8YW7CwWRGcBNKIk1X_YXIIZth8JIpE7KECHLQcyo967kjDlEIpGuxni6nitIiuhbQjedp95FQA.fZIHdJtOKKAHn8; + path=/; expires=Wed, 25-Jun-25 11:31:37 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=jkhEgxLxs5Q4e5XtZSzYL7lbMc4n62xCreFglGWIkZA-1750849297963-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7ca4e8d035f-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBakt1WlZlVmFxMVVSa212N3V4MTRl + TEZIWiIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5NywKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogIntcbiAgXCJjb250ZXh0XCI6 + IHtcbiAgICBcImFzc2lnbmVlX2lkc1wiOiBbXCJqelwiXVxuICB9XG59IiwK + ICAgICAgICAicmVmdXNhbCI6IG51bGwsCiAgICAgICAgImFubm90YXRpb25z + IjogW10KICAgICAgfSwKICAgICAgImxvZ3Byb2JzIjogbnVsbCwKICAgICAg + ImZpbmlzaF9yZWFzb24iOiAic3RvcCIKICAgIH0KICBdLAogICJ1c2FnZSI6 + IHsKICAgICJwcm9tcHRfdG9rZW5zIjogMTE3MSwKICAgICJjb21wbGV0aW9u + X3Rva2VucyI6IDE5LAogICAgInRvdGFsX3Rva2VucyI6IDExOTAsCiAgICAi + cHJvbXB0X3Rva2Vuc19kZXRhaWxzIjogewogICAgICAiY2FjaGVkX3Rva2Vu + cyI6IDEwMjQsCiAgICAgICJhdWRpb190b2tlbnMiOiAwCiAgICB9LAogICAg + ImNvbXBsZXRpb25fdG9rZW5zX2RldGFpbHMiOiB7CiAgICAgICJyZWFzb25p + bmdfdG9rZW5zIjogMCwKICAgICAgImF1ZGlvX3Rva2VucyI6IDAsCiAgICAg + ICJhY2NlcHRlZF9wcmVkaWN0aW9uX3Rva2VucyI6IDAsCiAgICAgICJyZWpl + Y3RlZF9wcmVkaWN0aW9uX3Rva2VucyI6IDAKICAgIH0KICB9LAogICJzZXJ2 + aWNlX3RpZXIiOiAiZGVmYXVsdCIsCiAgInN5c3RlbV9maW5nZXJwcmludCI6 + ICJmcF8zODM0M2EyZjhmIgp9Cg== + recorded_at: Wed, 25 Jun 2025 11:01:37 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50IjoiYXNzaWduZWQgdG8g + anoifV0sInN0cmVhbSI6ZmFsc2UsInRlbXBlcmF0dXJlIjowLjd9 + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:38 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '376' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '384' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '493' + X-Ratelimit-Remaining-Tokens: + - '185226' + X-Ratelimit-Reset-Requests: + - 785ms + X-Ratelimit-Reset-Tokens: + - 4.431s + X-Request-Id: + - req_a82dd53d9db3ccaa9df3d5d187b705e8 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=kcZlnxlCVSaS5CrOKEAkF7vGSwK_nxK7FGZrC2VvxgM-1750849298-1.0.1.1-jxMM6HM2nigQEE9xM6LeGyxYjugbQz_J.5hODz_0c0IuHXjwQgY4uKMOQeL0ykGx9xbnXfchyI.na5cKrcoHQkNCcb6MR_VZjwtFnu_uCPU; + path=/; expires=Wed, 25-Jun-25 11:31:38 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=SqhdqbfvmDOTUQDGKYWeDyGsxRpcwfUVuPaUJU0M_y0-1750849298675-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7d09a2d0327-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBa0FKVVFLeHRaUGN6amdGbGxkTkU5 + NTNDaiIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5OCwKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogIntcbiAgXCJjb250ZXh0XCI6 + IHsgXCJhc3NpZ25lZV9pZHNcIjogW1wianpcIl0gfVxufSIsCiAgICAgICAg + InJlZnVzYWwiOiBudWxsLAogICAgICAgICJhbm5vdGF0aW9ucyI6IFtdCiAg + ICAgIH0sCiAgICAgICJsb2dwcm9icyI6IG51bGwsCiAgICAgICJmaW5pc2hf + cmVhc29uIjogInN0b3AiCiAgICB9CiAgXSwKICAidXNhZ2UiOiB7CiAgICAi + cHJvbXB0X3Rva2VucyI6IDExNzAsCiAgICAiY29tcGxldGlvbl90b2tlbnMi + OiAxNywKICAgICJ0b3RhbF90b2tlbnMiOiAxMTg3LAogICAgInByb21wdF90 + b2tlbnNfZGV0YWlscyI6IHsKICAgICAgImNhY2hlZF90b2tlbnMiOiAxMDI0 + LAogICAgICAiYXVkaW9fdG9rZW5zIjogMAogICAgfSwKICAgICJjb21wbGV0 + aW9uX3Rva2Vuc19kZXRhaWxzIjogewogICAgICAicmVhc29uaW5nX3Rva2Vu + cyI6IDAsCiAgICAgICJhdWRpb190b2tlbnMiOiAwLAogICAgICAiYWNjZXB0 + ZWRfcHJlZGljdGlvbl90b2tlbnMiOiAwLAogICAgICAicmVqZWN0ZWRfcHJl + ZGljdGlvbl90b2tlbnMiOiAwCiAgICB9CiAgfSwKICAic2VydmljZV90aWVy + IjogImRlZmF1bHQiLAogICJzeXN0ZW1fZmluZ2VycHJpbnQiOiAiZnBfMzgz + NDNhMmY4ZiIKfQo= + recorded_at: Wed, 25 Jun 2025 11:01:38 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50IjoidW5hc3NpZ25lZCBj + YXJkcyJ9XSwic3RyZWFtIjpmYWxzZSwidGVtcGVyYXR1cmUiOjAuN30= + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:39 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '284' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '287' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '493' + X-Ratelimit-Remaining-Tokens: + - '181440' + X-Ratelimit-Reset-Requests: + - 725ms + X-Ratelimit-Reset-Tokens: + - 5.567s + X-Request-Id: + - req_506c4edd46a2c50dcd5a9bab60e69efd + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=UYWJlxIrdhl63oK9HM3yuJGlHsD87Kyb6DaNK_zH1iw-1750849299-1.0.1.1-TlUHfxSmf4N0pSGMv7ug4qujTJTLYLMCUu.kBAw4jLvRPrWY.l.fqKEp0xQqqtWHR57yhWR7ZEzTwDrrJKH0VvgSHMAlOoBEE2NusLB4BiI; + path=/; expires=Wed, 25-Jun-25 11:31:39 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=dHLM5Xt0yD1Pim.1fPRO9IDOO4p5Birq92zPmhWcafQ-1750849299211-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7d51827383f-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBa3NRRFFBZkVnT29lOFI2UWg1OElx + TmdjWSIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5OCwKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogIntcbiAgXCJjb250ZXh0XCI6 + IHtcbiAgICBcImFzc2lnbm1lbnRfc3RhdHVzXCI6IFwidW5hc3NpZ25lZFwi + XG4gIH1cbn0iLAogICAgICAgICJyZWZ1c2FsIjogbnVsbCwKICAgICAgICAi + YW5ub3RhdGlvbnMiOiBbXQogICAgICB9LAogICAgICAibG9ncHJvYnMiOiBu + dWxsLAogICAgICAiZmluaXNoX3JlYXNvbiI6ICJzdG9wIgogICAgfQogIF0s + CiAgInVzYWdlIjogewogICAgInByb21wdF90b2tlbnMiOiAxMTY5LAogICAg + ImNvbXBsZXRpb25fdG9rZW5zIjogMTgsCiAgICAidG90YWxfdG9rZW5zIjog + MTE4NywKICAgICJwcm9tcHRfdG9rZW5zX2RldGFpbHMiOiB7CiAgICAgICJj + YWNoZWRfdG9rZW5zIjogMTAyNCwKICAgICAgImF1ZGlvX3Rva2VucyI6IDAK + ICAgIH0sCiAgICAiY29tcGxldGlvbl90b2tlbnNfZGV0YWlscyI6IHsKICAg + ICAgInJlYXNvbmluZ190b2tlbnMiOiAwLAogICAgICAiYXVkaW9fdG9rZW5z + IjogMCwKICAgICAgImFjY2VwdGVkX3ByZWRpY3Rpb25fdG9rZW5zIjogMCwK + ICAgICAgInJlamVjdGVkX3ByZWRpY3Rpb25fdG9rZW5zIjogMAogICAgfQog + IH0sCiAgInNlcnZpY2VfdGllciI6ICJkZWZhdWx0IiwKICAic3lzdGVtX2Zp + bmdlcnByaW50IjogImZwXzM4MzQzYTJmOGYiCn0K + recorded_at: Wed, 25 Jun 2025 11:01:39 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50Ijoibm90IGFzc2lnbmVk + In1dLCJzdHJlYW0iOmZhbHNlLCJ0ZW1wZXJhdHVyZSI6MC43fQ== + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:40 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '349' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '920' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '493' + X-Ratelimit-Remaining-Tokens: + - '177286' + X-Ratelimit-Reset-Requests: + - 839ms + X-Ratelimit-Reset-Tokens: + - 6.814s + X-Request-Id: + - req_5b2fc69b3fcc0fbd942e0b54bdc6fa12 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=yPaWLl7grLnbEfS5g5BZwMG4ecoLAfTxiQI0SsCGV3Y-1750849300-1.0.1.1-M_Ebs1.lp9ayUipjR_zVyE236ozbC8H1nnlAQIUpvOTsWqQPUZ7vVfDUPEbiH73EP0kTZ73ZMlDjsoJeo.OBXq86FW0dvTL2IUya6NSzYmE; + path=/; expires=Wed, 25-Jun-25 11:31:40 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=0KiLstzpKo.diOz_2Z.xX5agoDxluO3HS_OM4qzy1Hw-1750849300465-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7d86b87ec99-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBbU5aVlZtUjFtRm55Mk5jQnprOE5M + TFM2aSIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTMwMCwKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogInsgXCJjb250ZXh0XCI6IHsg + XCJhc3NpZ25tZW50X3N0YXR1c1wiOiBcInVuYXNzaWduZWRcIiB9IH0iLAog + ICAgICAgICJyZWZ1c2FsIjogbnVsbCwKICAgICAgICAiYW5ub3RhdGlvbnMi + OiBbXQogICAgICB9LAogICAgICAibG9ncHJvYnMiOiBudWxsLAogICAgICAi + ZmluaXNoX3JlYXNvbiI6ICJzdG9wIgogICAgfQogIF0sCiAgInVzYWdlIjog + ewogICAgInByb21wdF90b2tlbnMiOiAxMTY4LAogICAgImNvbXBsZXRpb25f + dG9rZW5zIjogMTUsCiAgICAidG90YWxfdG9rZW5zIjogMTE4MywKICAgICJw + cm9tcHRfdG9rZW5zX2RldGFpbHMiOiB7CiAgICAgICJjYWNoZWRfdG9rZW5z + IjogMTAyNCwKICAgICAgImF1ZGlvX3Rva2VucyI6IDAKICAgIH0sCiAgICAi + Y29tcGxldGlvbl90b2tlbnNfZGV0YWlscyI6IHsKICAgICAgInJlYXNvbmlu + Z190b2tlbnMiOiAwLAogICAgICAiYXVkaW9fdG9rZW5zIjogMCwKICAgICAg + ImFjY2VwdGVkX3ByZWRpY3Rpb25fdG9rZW5zIjogMCwKICAgICAgInJlamVj + dGVkX3ByZWRpY3Rpb25fdG9rZW5zIjogMAogICAgfQogIH0sCiAgInNlcnZp + Y2VfdGllciI6ICJkZWZhdWx0IiwKICAic3lzdGVtX2ZpbmdlcnByaW50Ijog + ImZwXzM4MzQzYTJmOGYiCn0K + recorded_at: Wed, 25 Jun 2025 11:01:40 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50IjoiY2FyZHMgYWJvdXQg + cGVyZm9ybWFuY2UgYXNzaWduZWQgdG8gam9yZ2UifV0sInN0cmVhbSI6ZmFs + c2UsInRlbXBlcmF0dXJlIjowLjd9 + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:41 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '368' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '371' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '497' + X-Ratelimit-Remaining-Tokens: + - '173149' + X-Ratelimit-Reset-Requests: + - 342ms + X-Ratelimit-Reset-Tokens: + - 8.055s + X-Request-Id: + - req_1cac358487b62b42517994cf651fda33 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=DOkHRGWJY3Ji0HM8tt2sreZaYvNMo_71rNyxCsqZWfc-1750849301-1.0.1.1-d9TLKoKRyy1oi8LX5ZGmLNr4DLB46Fdx3hfIWNNiAnS4nKiTp0zYO2mxZnCmIbENDDEDOL6jK_eu9kPTLNlihg2rUe0TQcDpvnZmTCfbv9E; + path=/; expires=Wed, 25-Jun-25 11:31:41 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=lw8m_vz_MFxL1R5ZJgqgy43BYZBxKBR4K5JzQriFhiU-1750849301141-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7e03d66cfd8-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBbTgydUpVeUhjU2dJTVU3RktzRkNH + N1drTCIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTMwMCwKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogIntcbiAgXCJjb250ZXh0XCI6 + IHsgXCJhc3NpZ25lZV9pZHNcIjogW1wiam9yZ2VcIl0sIFwidGVybXNcIjog + W1wicGVyZm9ybWFuY2VcIl0gfVxufSIsCiAgICAgICAgInJlZnVzYWwiOiBu + dWxsLAogICAgICAgICJhbm5vdGF0aW9ucyI6IFtdCiAgICAgIH0sCiAgICAg + ICJsb2dwcm9icyI6IG51bGwsCiAgICAgICJmaW5pc2hfcmVhc29uIjogInN0 + b3AiCiAgICB9CiAgXSwKICAidXNhZ2UiOiB7CiAgICAicHJvbXB0X3Rva2Vu + cyI6IDExNzMsCiAgICAiY29tcGxldGlvbl90b2tlbnMiOiAyMywKICAgICJ0 + b3RhbF90b2tlbnMiOiAxMTk2LAogICAgInByb21wdF90b2tlbnNfZGV0YWls + cyI6IHsKICAgICAgImNhY2hlZF90b2tlbnMiOiAxMDI0LAogICAgICAiYXVk + aW9fdG9rZW5zIjogMAogICAgfSwKICAgICJjb21wbGV0aW9uX3Rva2Vuc19k + ZXRhaWxzIjogewogICAgICAicmVhc29uaW5nX3Rva2VucyI6IDAsCiAgICAg + ICJhdWRpb190b2tlbnMiOiAwLAogICAgICAiYWNjZXB0ZWRfcHJlZGljdGlv + bl90b2tlbnMiOiAwLAogICAgICAicmVqZWN0ZWRfcHJlZGljdGlvbl90b2tl + bnMiOiAwCiAgICB9CiAgfSwKICAic2VydmljZV90aWVyIjogImRlZmF1bHQi + LAogICJzeXN0ZW1fZmluZ2VycHJpbnQiOiAiZnBfMzgzNDNhMmY4ZiIKfQo= + recorded_at: Wed, 25 Jun 2025 11:01:41 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgaW5zaWRlIGEgY2FyZCB9LlxuIn0seyJy + b2xlIjoidXNlciIsImNvbnRlbnQiOiJjYXJkcyBhc3NpZ25lZCB0byBqeiJ9 + XSwic3RyZWFtIjpmYWxzZSwidGVtcGVyYXR1cmUiOjAuN30= + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:41 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '449' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '489' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '499' + X-Ratelimit-Remaining-Tokens: + - '172255' + X-Ratelimit-Reset-Requests: + - 120ms + X-Ratelimit-Reset-Tokens: + - 8.323s + X-Request-Id: + - req_d5c50d9b150f8231ed6bac4fbff76d87 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=QZmD5jSM9.vr2nYARpD1VCu9oMg.L.7ICtLnl2otet4-1750849301-1.0.1.1-.JijyfxLMnz7QriBz1UfRROaEe7iv6O15EthouwkmupLDn.YvaL4ZjUKrSKGBWqs0TvUZ7btjpIJWmGJElvsmN4jg8H_C3A.rwj3msrY6mI; + path=/; expires=Wed, 25-Jun-25 11:31:41 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=oOZjW0AX532LiYXKBzH9LL59BJV9_87HL7Ti6CIcXvU-1750849301966-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7e48b62033e-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBbktWbkR5RVZkT25rYUdkd3pQdWYz + aDUyaSIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTMwMSwKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogIntcbiAgXCJjb250ZXh0XCI6 + IHtcbiAgICBcImFzc2lnbmVlX2lkc1wiOiBbXCJqelwiXVxuICB9XG59IiwK + ICAgICAgICAicmVmdXNhbCI6IG51bGwsCiAgICAgICAgImFubm90YXRpb25z + IjogW10KICAgICAgfSwKICAgICAgImxvZ3Byb2JzIjogbnVsbCwKICAgICAg + ImZpbmlzaF9yZWFzb24iOiAic3RvcCIKICAgIH0KICBdLAogICJ1c2FnZSI6 + IHsKICAgICJwcm9tcHRfdG9rZW5zIjogMTE2OSwKICAgICJjb21wbGV0aW9u + X3Rva2VucyI6IDE5LAogICAgInRvdGFsX3Rva2VucyI6IDExODgsCiAgICAi + cHJvbXB0X3Rva2Vuc19kZXRhaWxzIjogewogICAgICAiY2FjaGVkX3Rva2Vu + cyI6IDEwMjQsCiAgICAgICJhdWRpb190b2tlbnMiOiAwCiAgICB9LAogICAg + ImNvbXBsZXRpb25fdG9rZW5zX2RldGFpbHMiOiB7CiAgICAgICJyZWFzb25p + bmdfdG9rZW5zIjogMCwKICAgICAgImF1ZGlvX3Rva2VucyI6IDAsCiAgICAg + ICJhY2NlcHRlZF9wcmVkaWN0aW9uX3Rva2VucyI6IDAsCiAgICAgICJyZWpl + Y3RlZF9wcmVkaWN0aW9uX3Rva2VucyI6IDAKICAgIH0KICB9LAogICJzZXJ2 + aWNlX3RpZXIiOiAiZGVmYXVsdCIsCiAgInN5c3RlbV9maW5nZXJwcmludCI6 + ICJmcF8zODM0M2EyZjhmIgp9Cg== + recorded_at: Wed, 25 Jun 2025 11:01:41 GMT recorded_with: VCR 6.3.1 diff --git a/test/vcr_cassettes/command/ai/translator_test-test_filter_by_card_id.yml b/test/vcr_cassettes/command/ai/translator_test-test_filter_by_card_id.yml index 397a4027f..37bfa0187 100644 --- a/test/vcr_cassettes/command/ai/translator_test-test_filter_by_card_id.yml +++ b/test/vcr_cassettes/command/ai/translator_test-test_filter_by_card_id.yml @@ -5886,4 +5886,646 @@ http_interactions: ZXIiOiAiZGVmYXVsdCIsCiAgInN5c3RlbV9maW5nZXJwcmludCI6ICJmcF8z ODM0M2EyZjhmIgp9Cg== recorded_at: Wed, 25 Jun 2025 10:54:14 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50IjoiY2FyZCAxMjMifV0s + InN0cmVhbSI6ZmFsc2UsInRlbXBlcmF0dXJlIjowLjd9 + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:38 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '333' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '338' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '493' + X-Ratelimit-Remaining-Tokens: + - '184888' + X-Ratelimit-Reset-Requests: + - 737ms + X-Ratelimit-Reset-Tokens: + - 4.533s + X-Request-Id: + - req_42aef2abc67713aa6be9ea9be49ba907 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=T5EZLBJcuVPbEOAm.A9R6vxrpo09b1eMM9bYD4GJges-1750849298-1.0.1.1-qoOAqKBMn5pxWb14PD2WLIDa1.ziGmcVKlwqTj_.NUR8eGKuU6LsGA.sRICg3S_DWS29e.Q1.BM88I866EarmFOf6lH9wV4PT9mjnGarvbI; + path=/; expires=Wed, 25-Jun-25 11:31:38 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=Skajh__VRmKOGk99uDwL_vGiHioLJX1qXHEvshYspA4-1750849298674-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7ca7db6c8f8-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBa0RWUVpraTU1aWdXV2xXNU9RVEZm + UmVHRiIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5OCwKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogIntcbiAgXCJjb250ZXh0XCI6 + IHtcbiAgICBcImNhcmRfaWRzXCI6IFsxMjNdXG4gIH1cbn0iLAogICAgICAg + ICJyZWZ1c2FsIjogbnVsbCwKICAgICAgICAiYW5ub3RhdGlvbnMiOiBbXQog + ICAgICB9LAogICAgICAibG9ncHJvYnMiOiBudWxsLAogICAgICAiZmluaXNo + X3JlYXNvbiI6ICJzdG9wIgogICAgfQogIF0sCiAgInVzYWdlIjogewogICAg + InByb21wdF90b2tlbnMiOiAxMTY5LAogICAgImNvbXBsZXRpb25fdG9rZW5z + IjogMTcsCiAgICAidG90YWxfdG9rZW5zIjogMTE4NiwKICAgICJwcm9tcHRf + dG9rZW5zX2RldGFpbHMiOiB7CiAgICAgICJjYWNoZWRfdG9rZW5zIjogMTAy + NCwKICAgICAgImF1ZGlvX3Rva2VucyI6IDAKICAgIH0sCiAgICAiY29tcGxl + dGlvbl90b2tlbnNfZGV0YWlscyI6IHsKICAgICAgInJlYXNvbmluZ190b2tl + bnMiOiAwLAogICAgICAiYXVkaW9fdG9rZW5zIjogMCwKICAgICAgImFjY2Vw + dGVkX3ByZWRpY3Rpb25fdG9rZW5zIjogMCwKICAgICAgInJlamVjdGVkX3By + ZWRpY3Rpb25fdG9rZW5zIjogMAogICAgfQogIH0sCiAgInNlcnZpY2VfdGll + ciI6ICJkZWZhdWx0IiwKICAic3lzdGVtX2ZpbmdlcnByaW50IjogImZwXzM4 + MzQzYTJmOGYiCn0K + recorded_at: Wed, 25 Jun 2025 11:01:38 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50IjoiY2FyZCAxMjMsIDQ1 + NiJ9XSwic3RyZWFtIjpmYWxzZSwidGVtcGVyYXR1cmUiOjAuN30= + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:39 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '299' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '303' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '493' + X-Ratelimit-Remaining-Tokens: + - '180185' + X-Ratelimit-Reset-Requests: + - 784ms + X-Ratelimit-Reset-Tokens: + - 5.944s + X-Request-Id: + - req_e598fb407e7b731df6c87a4ad8d53eea + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=BHF1jU7ivnGk9GGUsj0IpYQAH4BSIKHK5pp4yY5YZcQ-1750849299-1.0.1.1-loi_SwnOBynAjSXOJw7WaM_dgEa6P.VPZdwRdaT.z_iy23940GRu3MEViSC_C22jWTc_zYK4vC36Yk1yXfytUZsBMNGz3aRySfF.ex_ip4g; + path=/; expires=Wed, 25-Jun-25 11:31:39 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=.doy9bCpOrkf5VX_MmVVICu_W5i98QB9wuC5x_TAcIs-1750849299306-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7d51ee169ee-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBa2pJQ1Z6dkJ0V1NaVUhxZGZyR1Nh + QnkyRSIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5OCwKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogIntcbiAgXCJjb250ZXh0XCI6 + IHsgXCJjYXJkX2lkc1wiOiBbMTIzLCA0NTZdIH1cbn0iLAogICAgICAgICJy + ZWZ1c2FsIjogbnVsbCwKICAgICAgICAiYW5ub3RhdGlvbnMiOiBbXQogICAg + ICB9LAogICAgICAibG9ncHJvYnMiOiBudWxsLAogICAgICAiZmluaXNoX3Jl + YXNvbiI6ICJzdG9wIgogICAgfQogIF0sCiAgInVzYWdlIjogewogICAgInBy + b21wdF90b2tlbnMiOiAxMTcyLAogICAgImNvbXBsZXRpb25fdG9rZW5zIjog + MTgsCiAgICAidG90YWxfdG9rZW5zIjogMTE5MCwKICAgICJwcm9tcHRfdG9r + ZW5zX2RldGFpbHMiOiB7CiAgICAgICJjYWNoZWRfdG9rZW5zIjogMTAyNCwK + ICAgICAgImF1ZGlvX3Rva2VucyI6IDAKICAgIH0sCiAgICAiY29tcGxldGlv + bl90b2tlbnNfZGV0YWlscyI6IHsKICAgICAgInJlYXNvbmluZ190b2tlbnMi + OiAwLAogICAgICAiYXVkaW9fdG9rZW5zIjogMCwKICAgICAgImFjY2VwdGVk + X3ByZWRpY3Rpb25fdG9rZW5zIjogMCwKICAgICAgInJlamVjdGVkX3ByZWRp + Y3Rpb25fdG9rZW5zIjogMAogICAgfQogIH0sCiAgInNlcnZpY2VfdGllciI6 + ICJkZWZhdWx0IiwKICAic3lzdGVtX2ZpbmdlcnByaW50IjogImZwXzM4MzQz + YTJmOGYiCn0K + recorded_at: Wed, 25 Jun 2025 11:01:39 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50IjoiMTIzIn1dLCJzdHJl + YW0iOmZhbHNlLCJ0ZW1wZXJhdHVyZSI6MC43fQ== + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:39 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '296' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '306' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '493' + X-Ratelimit-Remaining-Tokens: + - '176381' + X-Ratelimit-Reset-Requests: + - 815ms + X-Ratelimit-Reset-Tokens: + - 7.085s + X-Request-Id: + - req_71d3d52729caeeb2a090f72270dfee47 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=7F4MCHR00ztS3dQfNwNSS0nYyZz5jYNPL33g9cdh4WM-1750849299-1.0.1.1-PTvKLRbEgDJWZQdY7eyuWCmGv_vmOT42rQ0C5gTMz7._uAAOKsu9Eb7UCE6zGDsPqxLU272iJKGzV1OK6UrYzq5teGXMZE1wFQ6BsCecDCI; + path=/; expires=Wed, 25-Jun-25 11:31:39 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=UkyGz4zzajc4vHd6VF6BFrDQui_vqaCDFK7cSYAgKEc-1750849299951-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7d908eecbc8-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBbFo5TXNlSVBrNmNmeWRzUlNOdEF5 + enRvYyIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5OSwKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogInsgXCJjb250ZXh0XCI6IHsg + XCJ0ZXJtc1wiOiBbXCIxMjNcIl0gfSB9IiwKICAgICAgICAicmVmdXNhbCI6 + IG51bGwsCiAgICAgICAgImFubm90YXRpb25zIjogW10KICAgICAgfSwKICAg + ICAgImxvZ3Byb2JzIjogbnVsbCwKICAgICAgImZpbmlzaF9yZWFzb24iOiAi + c3RvcCIKICAgIH0KICBdLAogICJ1c2FnZSI6IHsKICAgICJwcm9tcHRfdG9r + ZW5zIjogMTE2NywKICAgICJjb21wbGV0aW9uX3Rva2VucyI6IDEzLAogICAg + InRvdGFsX3Rva2VucyI6IDExODAsCiAgICAicHJvbXB0X3Rva2Vuc19kZXRh + aWxzIjogewogICAgICAiY2FjaGVkX3Rva2VucyI6IDEwMjQsCiAgICAgICJh + dWRpb190b2tlbnMiOiAwCiAgICB9LAogICAgImNvbXBsZXRpb25fdG9rZW5z + X2RldGFpbHMiOiB7CiAgICAgICJyZWFzb25pbmdfdG9rZW5zIjogMCwKICAg + ICAgImF1ZGlvX3Rva2VucyI6IDAsCiAgICAgICJhY2NlcHRlZF9wcmVkaWN0 + aW9uX3Rva2VucyI6IDAsCiAgICAgICJyZWplY3RlZF9wcmVkaWN0aW9uX3Rv + a2VucyI6IDAKICAgIH0KICB9LAogICJzZXJ2aWNlX3RpZXIiOiAiZGVmYXVs + dCIsCiAgInN5c3RlbV9maW5nZXJwcmludCI6ICJmcF8zODM0M2EyZjhmIgp9 + Cg== + recorded_at: Wed, 25 Jun 2025 11:01:39 GMT recorded_with: VCR 6.3.1 diff --git a/test/vcr_cassettes/command/ai/translator_test-test_filter_by_collections.yml b/test/vcr_cassettes/command/ai/translator_test-test_filter_by_collections.yml index 93896d2aa..4c15ebf85 100644 --- a/test/vcr_cassettes/command/ai/translator_test-test_filter_by_collections.yml +++ b/test/vcr_cassettes/command/ai/translator_test-test_filter_by_collections.yml @@ -1966,4 +1966,218 @@ http_interactions: dmljZV90aWVyIjogImRlZmF1bHQiLAogICJzeXN0ZW1fZmluZ2VycHJpbnQi OiAiZnBfMzgzNDNhMmY4ZiIKfQo= recorded_at: Wed, 25 Jun 2025 10:54:13 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50Ijoid3JpdGVib29rIGNv + bGxlY3Rpb24ifV0sInN0cmVhbSI6ZmFsc2UsInRlbXBlcmF0dXJlIjowLjd9 + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:37 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '330' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '332' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '498' + X-Ratelimit-Remaining-Tokens: + - '197403' + X-Ratelimit-Reset-Requests: + - 195ms + X-Ratelimit-Reset-Tokens: + - 778ms + X-Request-Id: + - req_cd723fc7b32c8ef5d6dfba9421a8701a + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=NV0RwgC9MV98ZKG8sMLnrIvDjSyXD4oaw1MGRYJGEtE-1750849297-1.0.1.1-mYDVnt1Zl30OtrFdPvp5W2dMWDxhjvYDZY50igrbagYe0nHFkc9L1svvHnbsJ.06ds6sPQHPO.w_QIQcTiFUB.JaH3iJmqqib6B63KMg9GY; + path=/; expires=Wed, 25-Jun-25 11:31:37 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=LBQK3xFHCfrCvi9Fcri7REyf9k8_xp1l3CFj3v9V2jk-1750849297618-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7cb2e93030f-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBanJhd0JYZndiaTgyQTd3dXYxNjND + ejh2VSIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5NywKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogIntcbiAgXCJjb250ZXh0XCI6 + IHtcbiAgICBcImNvbGxlY3Rpb25faWRzXCI6IFtcIndyaXRlYm9va1wiXVxu + ICB9XG59IiwKICAgICAgICAicmVmdXNhbCI6IG51bGwsCiAgICAgICAgImFu + bm90YXRpb25zIjogW10KICAgICAgfSwKICAgICAgImxvZ3Byb2JzIjogbnVs + bCwKICAgICAgImZpbmlzaF9yZWFzb24iOiAic3RvcCIKICAgIH0KICBdLAog + ICJ1c2FnZSI6IHsKICAgICJwcm9tcHRfdG9rZW5zIjogMTE2OSwKICAgICJj + b21wbGV0aW9uX3Rva2VucyI6IDE4LAogICAgInRvdGFsX3Rva2VucyI6IDEx + ODcsCiAgICAicHJvbXB0X3Rva2Vuc19kZXRhaWxzIjogewogICAgICAiY2Fj + aGVkX3Rva2VucyI6IDEwMjQsCiAgICAgICJhdWRpb190b2tlbnMiOiAwCiAg + ICB9LAogICAgImNvbXBsZXRpb25fdG9rZW5zX2RldGFpbHMiOiB7CiAgICAg + ICJyZWFzb25pbmdfdG9rZW5zIjogMCwKICAgICAgImF1ZGlvX3Rva2VucyI6 + IDAsCiAgICAgICJhY2NlcHRlZF9wcmVkaWN0aW9uX3Rva2VucyI6IDAsCiAg + ICAgICJyZWplY3RlZF9wcmVkaWN0aW9uX3Rva2VucyI6IDAKICAgIH0KICB9 + LAogICJzZXJ2aWNlX3RpZXIiOiAiZGVmYXVsdCIsCiAgInN5c3RlbV9maW5n + ZXJwcmludCI6ICJmcF8zODM0M2EyZjhmIgp9Cg== + recorded_at: Wed, 25 Jun 2025 11:01:37 GMT recorded_with: VCR 6.3.1 diff --git a/test/vcr_cassettes/command/ai/translator_test-test_filter_by_indexed_by.yml b/test/vcr_cassettes/command/ai/translator_test-test_filter_by_indexed_by.yml index c821f9bf2..3a976edf2 100644 --- a/test/vcr_cassettes/command/ai/translator_test-test_filter_by_indexed_by.yml +++ b/test/vcr_cassettes/command/ai/translator_test-test_filter_by_indexed_by.yml @@ -13740,4 +13740,1503 @@ http_interactions: ciI6ICJkZWZhdWx0IiwKICAic3lzdGVtX2ZpbmdlcnByaW50IjogImZwXzM4 MzQzYTJmOGYiCn0K recorded_at: Wed, 25 Jun 2025 10:54:16 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50IjoiY2xvc2VkIGNhcmRz + In1dLCJzdHJlYW0iOmZhbHNlLCJ0ZW1wZXJhdHVyZSI6MC43fQ== + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:37 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '489' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '493' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '499' + X-Ratelimit-Remaining-Tokens: + - '198615' + X-Ratelimit-Reset-Requests: + - 120ms + X-Ratelimit-Reset-Tokens: + - 415ms + X-Request-Id: + - req_5dc8228e5693b68dd5c135aab00752a2 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=VayUSXvxrg43BcPrvp3i.LYuOIkfsSZedNXy58TbRww-1750849297-1.0.1.1-FZW4UPnGAtEKxjelBuT6f1MMRlw9JI831VQI879H_3p2ljEglWAmIcbjIgPkOyKz8ek0bsNqOoFM0EEAEYNjTEyEHfryXPsiJDZhrH5pTRI; + path=/; expires=Wed, 25-Jun-25 11:31:37 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=jEz6DB5NJTHWWRAKx58C1Dud68OLhpFsj8LfkFyUkOk-1750849297868-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7cade262f86-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBaklMb2pObnlvVVhhRU5oWkpNQ2pv + RUNJOSIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5NywKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogInsgXCJjb250ZXh0XCI6IHsg + XCJpbmRleGVkX2J5XCI6IFwiY2xvc2VkXCIgfSB9IiwKICAgICAgICAicmVm + dXNhbCI6IG51bGwsCiAgICAgICAgImFubm90YXRpb25zIjogW10KICAgICAg + fSwKICAgICAgImxvZ3Byb2JzIjogbnVsbCwKICAgICAgImZpbmlzaF9yZWFz + b24iOiAic3RvcCIKICAgIH0KICBdLAogICJ1c2FnZSI6IHsKICAgICJwcm9t + cHRfdG9rZW5zIjogMTE2OCwKICAgICJjb21wbGV0aW9uX3Rva2VucyI6IDE0 + LAogICAgInRvdGFsX3Rva2VucyI6IDExODIsCiAgICAicHJvbXB0X3Rva2Vu + c19kZXRhaWxzIjogewogICAgICAiY2FjaGVkX3Rva2VucyI6IDEwMjQsCiAg + ICAgICJhdWRpb190b2tlbnMiOiAwCiAgICB9LAogICAgImNvbXBsZXRpb25f + dG9rZW5zX2RldGFpbHMiOiB7CiAgICAgICJyZWFzb25pbmdfdG9rZW5zIjog + MCwKICAgICAgImF1ZGlvX3Rva2VucyI6IDAsCiAgICAgICJhY2NlcHRlZF9w + cmVkaWN0aW9uX3Rva2VucyI6IDAsCiAgICAgICJyZWplY3RlZF9wcmVkaWN0 + aW9uX3Rva2VucyI6IDAKICAgIH0KICB9LAogICJzZXJ2aWNlX3RpZXIiOiAi + ZGVmYXVsdCIsCiAgInN5c3RlbV9maW5nZXJwcmludCI6ICJmcF8zODM0M2Ey + ZjhmIgp9Cg== + recorded_at: Wed, 25 Jun 2025 11:01:37 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50IjoiY29tcGxldGVkIGNh + cmRzIn1dLCJzdHJlYW0iOmZhbHNlLCJ0ZW1wZXJhdHVyZSI6MC43fQ== + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:38 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '286' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '300' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '496' + X-Ratelimit-Remaining-Tokens: + - '189354' + X-Ratelimit-Reset-Requests: + - 470ms + X-Ratelimit-Reset-Tokens: + - 3.193s + X-Request-Id: + - req_a079e6934deb16e1fb027ec3119356ea + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=ql6eTxLKfWaC3hgLADJKcDw8QytVma6dVguzQ53LiIU-1750849298-1.0.1.1-eAO2OnIe9JCrpw1NxSQ_TX9BVEYFDhZPkhy3LxgQdfIVFjyRJDbS0wqon9vuTnw9.h8ypd.IcTOoCGlhnJhF8JXNwj06urdEmB0BrVRxLUE; + path=/; expires=Wed, 25-Jun-25 11:31:38 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=XvwIUoPoJPzwr0F5jUahZQzUk04hzYHrAA.Dye9QQMs-1750849298373-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7d00c755e28-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBa0N4NzI5SDAzRlBHMUN6Q2NBUUJY + NW1YOSIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5OCwKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogInsgXCJjb250ZXh0XCI6IHsg + XCJpbmRleGVkX2J5XCI6IFwiY2xvc2VkXCIgfSB9IiwKICAgICAgICAicmVm + dXNhbCI6IG51bGwsCiAgICAgICAgImFubm90YXRpb25zIjogW10KICAgICAg + fSwKICAgICAgImxvZ3Byb2JzIjogbnVsbCwKICAgICAgImZpbmlzaF9yZWFz + b24iOiAic3RvcCIKICAgIH0KICBdLAogICJ1c2FnZSI6IHsKICAgICJwcm9t + cHRfdG9rZW5zIjogMTE2OCwKICAgICJjb21wbGV0aW9uX3Rva2VucyI6IDE0 + LAogICAgInRvdGFsX3Rva2VucyI6IDExODIsCiAgICAicHJvbXB0X3Rva2Vu + c19kZXRhaWxzIjogewogICAgICAiY2FjaGVkX3Rva2VucyI6IDAsCiAgICAg + ICJhdWRpb190b2tlbnMiOiAwCiAgICB9LAogICAgImNvbXBsZXRpb25fdG9r + ZW5zX2RldGFpbHMiOiB7CiAgICAgICJyZWFzb25pbmdfdG9rZW5zIjogMCwK + ICAgICAgImF1ZGlvX3Rva2VucyI6IDAsCiAgICAgICJhY2NlcHRlZF9wcmVk + aWN0aW9uX3Rva2VucyI6IDAsCiAgICAgICJyZWplY3RlZF9wcmVkaWN0aW9u + X3Rva2VucyI6IDAKICAgIH0KICB9LAogICJzZXJ2aWNlX3RpZXIiOiAiZGVm + YXVsdCIsCiAgInN5c3RlbV9maW5nZXJwcmludCI6ICJmcF8zODM0M2EyZjhm + Igp9Cg== + recorded_at: Wed, 25 Jun 2025 11:01:38 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50IjoiY29tcGxldGVkIn1d + LCJzdHJlYW0iOmZhbHNlLCJ0ZW1wZXJhdHVyZSI6MC43fQ== + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:39 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '313' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '317' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '495' + X-Ratelimit-Remaining-Tokens: + - '183271' + X-Ratelimit-Reset-Requests: + - 587ms + X-Ratelimit-Reset-Tokens: + - 5.018s + X-Request-Id: + - req_6eb23b48a578c4161b4b1c2c3fcd4d26 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=jPDNujlEhMOeQoQH0D_8WDvamjilzI.B.5ohUCGNmno-1750849299-1.0.1.1-BbJIxLtuYMijy3s2xVcVM0CAfXv6JrQ6UpJ0IShtHZFqt4n6dy2HuuvsWijRLYjg1hderIUwxkZJveNq18uh8czzcj43a7XHsa7JSwgpeZ0; + path=/; expires=Wed, 25-Jun-25 11:31:39 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=ywXAJepw.yeAZwNios4ssJXLN54wxIyhnmu.GFO31EA-1750849299167-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7d3eb902150-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBa3NrVnpkalhxYzBUOGVUaDFaZzJu + aFY5MiIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5OCwKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogInsgXCJjb250ZXh0XCI6IHsg + XCJpbmRleGVkX2J5XCI6IFwiY2xvc2VkXCIgfSB9IiwKICAgICAgICAicmVm + dXNhbCI6IG51bGwsCiAgICAgICAgImFubm90YXRpb25zIjogW10KICAgICAg + fSwKICAgICAgImxvZ3Byb2JzIjogbnVsbCwKICAgICAgImZpbmlzaF9yZWFz + b24iOiAic3RvcCIKICAgIH0KICBdLAogICJ1c2FnZSI6IHsKICAgICJwcm9t + cHRfdG9rZW5zIjogMTE2NywKICAgICJjb21wbGV0aW9uX3Rva2VucyI6IDE0 + LAogICAgInRvdGFsX3Rva2VucyI6IDExODEsCiAgICAicHJvbXB0X3Rva2Vu + c19kZXRhaWxzIjogewogICAgICAiY2FjaGVkX3Rva2VucyI6IDEwMjQsCiAg + ICAgICJhdWRpb190b2tlbnMiOiAwCiAgICB9LAogICAgImNvbXBsZXRpb25f + dG9rZW5zX2RldGFpbHMiOiB7CiAgICAgICJyZWFzb25pbmdfdG9rZW5zIjog + MCwKICAgICAgImF1ZGlvX3Rva2VucyI6IDAsCiAgICAgICJhY2NlcHRlZF9w + cmVkaWN0aW9uX3Rva2VucyI6IDAsCiAgICAgICJyZWplY3RlZF9wcmVkaWN0 + aW9uX3Rva2VucyI6IDAKICAgIH0KICB9LAogICJzZXJ2aWNlX3RpZXIiOiAi + ZGVmYXVsdCIsCiAgInN5c3RlbV9maW5nZXJwcmludCI6ICJmcF8zODM0M2Ey + ZjhmIgp9Cg== + recorded_at: Wed, 25 Jun 2025 11:01:39 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50IjoicmVjZW50IGNhcmRz + In1dLCJzdHJlYW0iOmZhbHNlLCJ0ZW1wZXJhdHVyZSI6MC43fQ== + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:39 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '268' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '274' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '493' + X-Ratelimit-Remaining-Tokens: + - '177088' + X-Ratelimit-Reset-Requests: + - 792ms + X-Ratelimit-Reset-Tokens: + - 6.873s + X-Request-Id: + - req_04129e2cbb64817fec6c5057a74dda11 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=NMtK22z1IZWco2YNy42CV7qLFW8eK3x9sDTrZdbLBso-1750849299-1.0.1.1-KwFXREkvGIfnxu.e5lULbFOh57VeWvBAy3OzEbH7FyWLUFl0eGHGp69vWgKG1okbAqYQ6UVPdE0Oz9OrsjQpVWeBs7maL6Fh_cB2GHIZGPw; + path=/; expires=Wed, 25-Jun-25 11:31:39 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=jSaSgk0VtXIfXXDjgXPYzBQBHoM4PasYmHeui_m4FBo-1750849299770-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7d8289a3145-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBbFNCMGJKMHVjRXRiSzZNMGJSY0ZH + THVFWiIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5OSwKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogInsgXCJjb250ZXh0XCI6IHsg + XCJpbmRleGVkX2J5XCI6IFwibmV3ZXN0XCIgfSB9IiwKICAgICAgICAicmVm + dXNhbCI6IG51bGwsCiAgICAgICAgImFubm90YXRpb25zIjogW10KICAgICAg + fSwKICAgICAgImxvZ3Byb2JzIjogbnVsbCwKICAgICAgImZpbmlzaF9yZWFz + b24iOiAic3RvcCIKICAgIH0KICBdLAogICJ1c2FnZSI6IHsKICAgICJwcm9t + cHRfdG9rZW5zIjogMTE2OCwKICAgICJjb21wbGV0aW9uX3Rva2VucyI6IDE1 + LAogICAgInRvdGFsX3Rva2VucyI6IDExODMsCiAgICAicHJvbXB0X3Rva2Vu + c19kZXRhaWxzIjogewogICAgICAiY2FjaGVkX3Rva2VucyI6IDEwMjQsCiAg + ICAgICJhdWRpb190b2tlbnMiOiAwCiAgICB9LAogICAgImNvbXBsZXRpb25f + dG9rZW5zX2RldGFpbHMiOiB7CiAgICAgICJyZWFzb25pbmdfdG9rZW5zIjog + MCwKICAgICAgImF1ZGlvX3Rva2VucyI6IDAsCiAgICAgICJhY2NlcHRlZF9w + cmVkaWN0aW9uX3Rva2VucyI6IDAsCiAgICAgICJyZWplY3RlZF9wcmVkaWN0 + aW9uX3Rva2VucyI6IDAKICAgIH0KICB9LAogICJzZXJ2aWNlX3RpZXIiOiAi + ZGVmYXVsdCIsCiAgInN5c3RlbV9maW5nZXJwcmludCI6ICJmcF8zODM0M2Ey + ZjhmIgp9Cg== + recorded_at: Wed, 25 Jun 2025 11:01:39 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50IjoiY2FyZHMgd2l0aCBy + ZWNlbnQgYWN0aXZpdHkifV0sInN0cmVhbSI6ZmFsc2UsInRlbXBlcmF0dXJl + IjowLjd9 + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:40 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '308' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '315' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '491' + X-Ratelimit-Remaining-Tokens: + - '171918' + X-Ratelimit-Reset-Requests: + - 983ms + X-Ratelimit-Reset-Tokens: + - 8.424s + X-Request-Id: + - req_605e62547b44e7bc33a569b5661f439d + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=5Mp.6KHgHlM1RUPIztk2UZ5ODrN3fy4FAgie6kfoGuQ-1750849300-1.0.1.1-.RqfzztMprD7MYzyAgefuepFhJE3HPXi7Y6fUISJ1eWXZM0B0x.6gb25fcY.8ileINokhE_5OEhDVNEPiGpaS2AamN8K37xYqtKF4QQlNY4; + path=/; expires=Wed, 25-Jun-25 11:31:40 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=GvMa07o6MC9xjpMZHLujxCA8K6iPrTazlD9Oc02a3OU-1750849300437-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7dbec30e05d-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBbXkxUEQwTHkxMUx1akZXUXluZVN5 + Qlc2cSIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTMwMCwKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogInsgXCJjb250ZXh0XCI6IHsg + XCJpbmRleGVkX2J5XCI6IFwibGF0ZXN0XCIgfSB9IiwKICAgICAgICAicmVm + dXNhbCI6IG51bGwsCiAgICAgICAgImFubm90YXRpb25zIjogW10KICAgICAg + fSwKICAgICAgImxvZ3Byb2JzIjogbnVsbCwKICAgICAgImZpbmlzaF9yZWFz + b24iOiAic3RvcCIKICAgIH0KICBdLAogICJ1c2FnZSI6IHsKICAgICJwcm9t + cHRfdG9rZW5zIjogMTE3MCwKICAgICJjb21wbGV0aW9uX3Rva2VucyI6IDE0 + LAogICAgInRvdGFsX3Rva2VucyI6IDExODQsCiAgICAicHJvbXB0X3Rva2Vu + c19kZXRhaWxzIjogewogICAgICAiY2FjaGVkX3Rva2VucyI6IDEwMjQsCiAg + ICAgICJhdWRpb190b2tlbnMiOiAwCiAgICB9LAogICAgImNvbXBsZXRpb25f + dG9rZW5zX2RldGFpbHMiOiB7CiAgICAgICJyZWFzb25pbmdfdG9rZW5zIjog + MCwKICAgICAgImF1ZGlvX3Rva2VucyI6IDAsCiAgICAgICJhY2NlcHRlZF9w + cmVkaWN0aW9uX3Rva2VucyI6IDAsCiAgICAgICJyZWplY3RlZF9wcmVkaWN0 + aW9uX3Rva2VucyI6IDAKICAgIH0KICB9LAogICJzZXJ2aWNlX3RpZXIiOiAi + ZGVmYXVsdCIsCiAgInN5c3RlbV9maW5nZXJwcmludCI6ICJmcF8zODM0M2Ey + ZjhmIgp9Cg== + recorded_at: Wed, 25 Jun 2025 11:01:40 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50Ijoic3RhbGxlZCBjYXJk + cyJ9XSwic3RyZWFtIjpmYWxzZSwidGVtcGVyYXR1cmUiOjAuN30= + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:41 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '441' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '450' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '499' + X-Ratelimit-Remaining-Tokens: + - '176663' + X-Ratelimit-Reset-Requests: + - 120ms + X-Ratelimit-Reset-Tokens: + - 7.001s + X-Request-Id: + - req_2c80bad8c756b6f9bcd2708b63f889ee + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=g_6RNqnKqw63DdDjjdf12yIYdvexIQ8z.lv6fpwQ4Jo-1750849301-1.0.1.1-6Pgc8SMTzw7cWB.bA9hnSbqA5DgVyxcZsoeCbd9Y1LcLPMX68qMTULUOxofT4cg97o2CMli2f4PCWuZ9vgiDOA4LRazvXlROv6bB2eas0AU; + path=/; expires=Wed, 25-Jun-25 11:31:41 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=s7MH_3hhl9A4QstVf9mXZC3QzxcQHI0ZiGP8Qqd4QT0-1750849301210-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7e00aadcf98-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBbWJudHYzdlcyZTcwdkRWZGVDRk9i + NDFMTSIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTMwMCwKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogIntcbiAgXCJjb250ZXh0XCI6 + IHtcbiAgICBcImluZGV4ZWRfYnlcIjogXCJzdGFsbGVkXCJcbiAgfVxufSIs + CiAgICAgICAgInJlZnVzYWwiOiBudWxsLAogICAgICAgICJhbm5vdGF0aW9u + cyI6IFtdCiAgICAgIH0sCiAgICAgICJsb2dwcm9icyI6IG51bGwsCiAgICAg + ICJmaW5pc2hfcmVhc29uIjogInN0b3AiCiAgICB9CiAgXSwKICAidXNhZ2Ui + OiB7CiAgICAicHJvbXB0X3Rva2VucyI6IDExNjksCiAgICAiY29tcGxldGlv + bl90b2tlbnMiOiAxOCwKICAgICJ0b3RhbF90b2tlbnMiOiAxMTg3LAogICAg + InByb21wdF90b2tlbnNfZGV0YWlscyI6IHsKICAgICAgImNhY2hlZF90b2tl + bnMiOiAxMDI0LAogICAgICAiYXVkaW9fdG9rZW5zIjogMAogICAgfSwKICAg + ICJjb21wbGV0aW9uX3Rva2Vuc19kZXRhaWxzIjogewogICAgICAicmVhc29u + aW5nX3Rva2VucyI6IDAsCiAgICAgICJhdWRpb190b2tlbnMiOiAwLAogICAg + ICAiYWNjZXB0ZWRfcHJlZGljdGlvbl90b2tlbnMiOiAwLAogICAgICAicmVq + ZWN0ZWRfcHJlZGljdGlvbl90b2tlbnMiOiAwCiAgICB9CiAgfSwKICAic2Vy + dmljZV90aWVyIjogImRlZmF1bHQiLAogICJzeXN0ZW1fZmluZ2VycHJpbnQi + OiAiZnBfMzgzNDNhMmY4ZiIKfQo= + recorded_at: Wed, 25 Jun 2025 11:01:41 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50Ijoic3RhZ25hdGVkIGNh + cmRzIn1dLCJzdHJlYW0iOmZhbHNlLCJ0ZW1wZXJhdHVyZSI6MC43fQ== + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:41 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '375' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '378' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '499' + X-Ratelimit-Remaining-Tokens: + - '173376' + X-Ratelimit-Reset-Requests: + - 120ms + X-Ratelimit-Reset-Tokens: + - 7.987s + X-Request-Id: + - req_354f65ceb261d64071e777677013fdd9 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=EGeIomnkRQxoc96Ilf1i1aTTmKHKqreG.4ZcDjhRzWk-1750849301-1.0.1.1-.SP1NcFazpZACArldrcEelYT.E16lUvUVLkVF_yzj16.l7kVcQR_Ykj8wRNW3Istgi0WTDl6DHDTi1rtAlQ58Me6CyAwUI5AFals5dTMv0s; + path=/; expires=Wed, 25-Jun-25 11:31:41 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=9XYK4lF4Up1LsHe8dTgfEdHIUCK2q3u9jU3eQzx0CxQ-1750849301938-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7e50b0acfe3-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBbmpEdnVFVjNoZFQ4ZkNjNU42Vk1I + RFd2diIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTMwMSwKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogInsgXCJjb250ZXh0XCI6IHsg + XCJpbmRleGVkX2J5XCI6IFwic3RhbGxlZFwiIH0gfSIsCiAgICAgICAgInJl + ZnVzYWwiOiBudWxsLAogICAgICAgICJhbm5vdGF0aW9ucyI6IFtdCiAgICAg + IH0sCiAgICAgICJsb2dwcm9icyI6IG51bGwsCiAgICAgICJmaW5pc2hfcmVh + c29uIjogInN0b3AiCiAgICB9CiAgXSwKICAidXNhZ2UiOiB7CiAgICAicHJv + bXB0X3Rva2VucyI6IDExNzAsCiAgICAiY29tcGxldGlvbl90b2tlbnMiOiAx + NSwKICAgICJ0b3RhbF90b2tlbnMiOiAxMTg1LAogICAgInByb21wdF90b2tl + bnNfZGV0YWlscyI6IHsKICAgICAgImNhY2hlZF90b2tlbnMiOiAwLAogICAg + ICAiYXVkaW9fdG9rZW5zIjogMAogICAgfSwKICAgICJjb21wbGV0aW9uX3Rv + a2Vuc19kZXRhaWxzIjogewogICAgICAicmVhc29uaW5nX3Rva2VucyI6IDAs + CiAgICAgICJhdWRpb190b2tlbnMiOiAwLAogICAgICAiYWNjZXB0ZWRfcHJl + ZGljdGlvbl90b2tlbnMiOiAwLAogICAgICAicmVqZWN0ZWRfcHJlZGljdGlv + bl90b2tlbnMiOiAwCiAgICB9CiAgfSwKICAic2VydmljZV90aWVyIjogImRl + ZmF1bHQiLAogICJzeXN0ZW1fZmluZ2VycHJpbnQiOiAiZnBfMzgzNDNhMmY4 + ZiIKfQo= + recorded_at: Wed, 25 Jun 2025 11:01:41 GMT recorded_with: VCR 6.3.1 diff --git a/test/vcr_cassettes/command/ai/translator_test-test_filter_by_tag.yml b/test/vcr_cassettes/command/ai/translator_test-test_filter_by_tag.yml index 009058698..8f1c476bb 100644 --- a/test/vcr_cassettes/command/ai/translator_test-test_filter_by_tag.yml +++ b/test/vcr_cassettes/command/ai/translator_test-test_filter_by_tag.yml @@ -7622,4 +7622,863 @@ http_interactions: OiAiZGVmYXVsdCIsCiAgInN5c3RlbV9maW5nZXJwcmludCI6ICJmcF8zODM0 M2EyZjhmIgp9Cg== recorded_at: Wed, 25 Jun 2025 10:54:14 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50IjoiY2FyZHMgdGFnZ2Vk + IHdpdGggZGVzaWduIn1dLCJzdHJlYW0iOmZhbHNlLCJ0ZW1wZXJhdHVyZSI6 + MC43fQ== + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:37 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '440' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '443' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '499' + X-Ratelimit-Remaining-Tokens: + - '198493' + X-Ratelimit-Reset-Requests: + - 120ms + X-Ratelimit-Reset-Tokens: + - 451ms + X-Request-Id: + - req_cd0e412eb1844d4d296a887eab072b07 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=.HLvmy5YW65LuSvF1oo5HA1cduECMztc6l8Lt5P.TcI-1750849297-1.0.1.1-oofgMAd2_thTRt5Q4yKdllk7uR9.Fh5dgcXLhk_kFWpq3tTGowJx9pUPkUD6g.MrGeysiRsgDWyjekXM_wgfC.R4cLTXGA0JdMtOItkiM5M; + path=/; expires=Wed, 25-Jun-25 11:31:37 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=7Ityp64ffehDck7F02HJpbPpO.9EJsYyciR5QrGgPPA-1750849297687-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7cadc98ec9a-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBanJvM3I4MkJ4QmJHRkNwM21PcXpH + OWpOYiIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5NywKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogIntcbiAgXCJjb250ZXh0XCI6 + IHsgXCJ0YWdfaWRzXCI6IFtcImRlc2lnblwiXSB9XG59IiwKICAgICAgICAi + cmVmdXNhbCI6IG51bGwsCiAgICAgICAgImFubm90YXRpb25zIjogW10KICAg + ICAgfSwKICAgICAgImxvZ3Byb2JzIjogbnVsbCwKICAgICAgImZpbmlzaF9y + ZWFzb24iOiAic3RvcCIKICAgIH0KICBdLAogICJ1c2FnZSI6IHsKICAgICJw + cm9tcHRfdG9rZW5zIjogMTE3MCwKICAgICJjb21wbGV0aW9uX3Rva2VucyI6 + IDE1LAogICAgInRvdGFsX3Rva2VucyI6IDExODUsCiAgICAicHJvbXB0X3Rv + a2Vuc19kZXRhaWxzIjogewogICAgICAiY2FjaGVkX3Rva2VucyI6IDEwMjQs + CiAgICAgICJhdWRpb190b2tlbnMiOiAwCiAgICB9LAogICAgImNvbXBsZXRp + b25fdG9rZW5zX2RldGFpbHMiOiB7CiAgICAgICJyZWFzb25pbmdfdG9rZW5z + IjogMCwKICAgICAgImF1ZGlvX3Rva2VucyI6IDAsCiAgICAgICJhY2NlcHRl + ZF9wcmVkaWN0aW9uX3Rva2VucyI6IDAsCiAgICAgICJyZWplY3RlZF9wcmVk + aWN0aW9uX3Rva2VucyI6IDAKICAgIH0KICB9LAogICJzZXJ2aWNlX3RpZXIi + OiAiZGVmYXVsdCIsCiAgInN5c3RlbV9maW5nZXJwcmludCI6ICJmcF8zODM0 + M2EyZjhmIgp9Cg== + recorded_at: Wed, 25 Jun 2025 11:01:37 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50IjoiY2FyZHMgdGFnZ2Vk + IHdpdGggI2Rlc2lnbiJ9XSwic3RyZWFtIjpmYWxzZSwidGVtcGVyYXR1cmUi + OjAuN30= + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:38 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '425' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '447' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '496' + X-Ratelimit-Remaining-Tokens: + - '190443' + X-Ratelimit-Reset-Requests: + - 458ms + X-Ratelimit-Reset-Tokens: + - 2.867s + X-Request-Id: + - req_0b9dcb0fb3f2064036ad5db50759dd20 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=4B_F0uY0_f0A5j9g3nnuKRwsqNC90rqf7PHwKvdWzW4-1750849298-1.0.1.1-yWB6TqN.0y5DZlXEwyncZxjc8wUY.3RKngYWIvPRIyggR6k3BnYO0gmNJLbqxnxkfvTPbGr2jDzf7ObXZSF5Mx4iuquwn.rGOXT7WRX1454; + path=/; expires=Wed, 25-Jun-25 11:31:38 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=NPiVzwXs.Bx8ve1drAXlhau5bK5ug4kHGGAcDUAbrW8-1750849298455-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7cee8a9ecb0-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBajBMZE9WcXkxS0k3Uk5EWkxpNnlT + STZBRiIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5NywKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogIntcbiAgXCJjb250ZXh0XCI6 + IHsgXCJ0YWdfaWRzXCI6IFtcImRlc2lnblwiXSB9XG59IiwKICAgICAgICAi + cmVmdXNhbCI6IG51bGwsCiAgICAgICAgImFubm90YXRpb25zIjogW10KICAg + ICAgfSwKICAgICAgImxvZ3Byb2JzIjogbnVsbCwKICAgICAgImZpbmlzaF9y + ZWFzb24iOiAic3RvcCIKICAgIH0KICBdLAogICJ1c2FnZSI6IHsKICAgICJw + cm9tcHRfdG9rZW5zIjogMTE3MSwKICAgICJjb21wbGV0aW9uX3Rva2VucyI6 + IDE1LAogICAgInRvdGFsX3Rva2VucyI6IDExODYsCiAgICAicHJvbXB0X3Rv + a2Vuc19kZXRhaWxzIjogewogICAgICAiY2FjaGVkX3Rva2VucyI6IDEwMjQs + CiAgICAgICJhdWRpb190b2tlbnMiOiAwCiAgICB9LAogICAgImNvbXBsZXRp + b25fdG9rZW5zX2RldGFpbHMiOiB7CiAgICAgICJyZWFzb25pbmdfdG9rZW5z + IjogMCwKICAgICAgImF1ZGlvX3Rva2VucyI6IDAsCiAgICAgICJhY2NlcHRl + ZF9wcmVkaWN0aW9uX3Rva2VucyI6IDAsCiAgICAgICJyZWplY3RlZF9wcmVk + aWN0aW9uX3Rva2VucyI6IDAKICAgIH0KICB9LAogICJzZXJ2aWNlX3RpZXIi + OiAiZGVmYXVsdCIsCiAgInN5c3RlbV9maW5nZXJwcmludCI6ICJmcF8zODM0 + M2EyZjhmIgp9Cg== + recorded_at: Wed, 25 Jun 2025 11:01:38 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50IjoiI2Rlc2lnbiBjYXJk + cyJ9XSwic3RyZWFtIjpmYWxzZSwidGVtcGVyYXR1cmUiOjAuN30= + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:39 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '332' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '362' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '493' + X-Ratelimit-Remaining-Tokens: + - '182348' + X-Ratelimit-Reset-Requests: + - 745ms + X-Ratelimit-Reset-Tokens: + - 5.295s + X-Request-Id: + - req_5bcbe58bbc488bbcad1cb6021ae2459a + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=uz7ojjjpX.6HRSmDPbNgdzKiB26ShUvWkNXK3JbFnzk-1750849299-1.0.1.1-TZmFQ7LYrqgshNENY_b12rdYwGejFBH_suVRKWxDrzssiBnbewDYirKzhnMF2xV50O1gUqeNkiMjSoeqNzVGyB.kmK.JBU0MpUzLirG8zbw; + path=/; expires=Wed, 25-Jun-25 11:31:39 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=Ohix8GiPBms98HtZRn45V5jI4WayIgIi7hkX4VlE9yU-1750849299190-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7d3eab386c0-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBa3g5WnBWc1o5Q1M5c3c3WG5VcUw1 + N2ZmbyIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5OCwKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogInsgXCJjb250ZXh0XCI6IHsg + XCJ0YWdfaWRzXCI6IFtcImRlc2lnblwiXSB9IH0iLAogICAgICAgICJyZWZ1 + c2FsIjogbnVsbCwKICAgICAgICAiYW5ub3RhdGlvbnMiOiBbXQogICAgICB9 + LAogICAgICAibG9ncHJvYnMiOiBudWxsLAogICAgICAiZmluaXNoX3JlYXNv + biI6ICJzdG9wIgogICAgfQogIF0sCiAgInVzYWdlIjogewogICAgInByb21w + dF90b2tlbnMiOiAxMTY5LAogICAgImNvbXBsZXRpb25fdG9rZW5zIjogMTQs + CiAgICAidG90YWxfdG9rZW5zIjogMTE4MywKICAgICJwcm9tcHRfdG9rZW5z + X2RldGFpbHMiOiB7CiAgICAgICJjYWNoZWRfdG9rZW5zIjogMTAyNCwKICAg + ICAgImF1ZGlvX3Rva2VucyI6IDAKICAgIH0sCiAgICAiY29tcGxldGlvbl90 + b2tlbnNfZGV0YWlscyI6IHsKICAgICAgInJlYXNvbmluZ190b2tlbnMiOiAw + LAogICAgICAiYXVkaW9fdG9rZW5zIjogMCwKICAgICAgImFjY2VwdGVkX3By + ZWRpY3Rpb25fdG9rZW5zIjogMCwKICAgICAgInJlamVjdGVkX3ByZWRpY3Rp + b25fdG9rZW5zIjogMAogICAgfQogIH0sCiAgInNlcnZpY2VfdGllciI6ICJk + ZWZhdWx0IiwKICAic3lzdGVtX2ZpbmdlcnByaW50IjogImZwXzM4MzQzYTJm + OGYiCn0K + recorded_at: Wed, 25 Jun 2025 11:01:39 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50IjoiY2FyZHMgdGFnZ2Vk + IHdpdGggZGVzaWduIn1dLCJzdHJlYW0iOmZhbHNlLCJ0ZW1wZXJhdHVyZSI6 + MC43fQ== + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:40 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '423' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '521' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '493' + X-Ratelimit-Remaining-Tokens: + - '176599' + X-Ratelimit-Reset-Requests: + - 836ms + X-Ratelimit-Reset-Tokens: + - 7.02s + X-Request-Id: + - req_1d1414e78d573b794b72ffbbbfa5924c + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=0crDIEkR3IjhpI1BuXtzpqVC_qPiKwUinYF2pOubf4w-1750849300-1.0.1.1-aT5O6q2_fMJ7ybImfEHA3PbJ2bTQtLwidofnt2daAPBW5BeUQA2Uiz.0jzBhdkaamzzCyb5BXu_pNmhY8APoU.xT2pAJtnzf8hRPl.0_aAY; + path=/; expires=Wed, 25-Jun-25 11:31:40 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=YBHGdEveagmW20S1iFuiaKof8kcqJgEntHzsiCabeL0-1750849300093-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7d89ecb036a-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBbHgybjUyWFNvUVVhNFJyYmpWZUww + blpteiIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5OSwKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogIntcbiAgXCJjb250ZXh0XCI6 + IHsgXCJ0YWdfaWRzXCI6IFtcImRlc2lnblwiXSB9XG59IiwKICAgICAgICAi + cmVmdXNhbCI6IG51bGwsCiAgICAgICAgImFubm90YXRpb25zIjogW10KICAg + ICAgfSwKICAgICAgImxvZ3Byb2JzIjogbnVsbCwKICAgICAgImZpbmlzaF9y + ZWFzb24iOiAic3RvcCIKICAgIH0KICBdLAogICJ1c2FnZSI6IHsKICAgICJw + cm9tcHRfdG9rZW5zIjogMTE3MCwKICAgICJjb21wbGV0aW9uX3Rva2VucyI6 + IDE1LAogICAgInRvdGFsX3Rva2VucyI6IDExODUsCiAgICAicHJvbXB0X3Rv + a2Vuc19kZXRhaWxzIjogewogICAgICAiY2FjaGVkX3Rva2VucyI6IDEwMjQs + CiAgICAgICJhdWRpb190b2tlbnMiOiAwCiAgICB9LAogICAgImNvbXBsZXRp + b25fdG9rZW5zX2RldGFpbHMiOiB7CiAgICAgICJyZWFzb25pbmdfdG9rZW5z + IjogMCwKICAgICAgImF1ZGlvX3Rva2VucyI6IDAsCiAgICAgICJhY2NlcHRl + ZF9wcmVkaWN0aW9uX3Rva2VucyI6IDAsCiAgICAgICJyZWplY3RlZF9wcmVk + aWN0aW9uX3Rva2VucyI6IDAKICAgIH0KICB9LAogICJzZXJ2aWNlX3RpZXIi + OiAiZGVmYXVsdCIsCiAgInN5c3RlbV9maW5nZXJwcmludCI6ICJmcF8zODM0 + M2EyZjhmIgp9Cg== + recorded_at: Wed, 25 Jun 2025 11:01:40 GMT recorded_with: VCR 6.3.1 diff --git a/test/vcr_cassettes/command/ai/translator_test-test_tag_cards.yml b/test/vcr_cassettes/command/ai/translator_test-test_tag_cards.yml index 0c81b3bf9..9fef575d0 100644 --- a/test/vcr_cassettes/command/ai/translator_test-test_tag_cards.yml +++ b/test/vcr_cassettes/command/ai/translator_test-test_tag_cards.yml @@ -1954,4 +1954,217 @@ http_interactions: ZW5zIjogMAogICAgfQogIH0sCiAgInNlcnZpY2VfdGllciI6ICJkZWZhdWx0 IiwKICAic3lzdGVtX2ZpbmdlcnByaW50IjogImZwXzM4MzQzYTJmOGYiCn0K recorded_at: Wed, 25 Jun 2025 10:54:12 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50IjoidGFnIHdpdGggI2Rl + c2lnbiJ9XSwic3RyZWFtIjpmYWxzZSwidGVtcGVyYXR1cmUiOjAuN30= + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:37 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '284' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '287' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '498' + X-Ratelimit-Remaining-Tokens: + - '197276' + X-Ratelimit-Reset-Requests: + - 173ms + X-Ratelimit-Reset-Tokens: + - 816ms + X-Request-Id: + - req_4079510b3be3e8cffd76121e4aa0dba2 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=T0_xA1ClOfOImh02PSWeB9qqzqd0kZXw94LsxEhkUF0-1750849297-1.0.1.1-OGgdylwOEyrNflX8BepgR3V_MKx0FcrhK8cNbLqleF9RvUs3B0vyYOQfJLuf1E_0Q1SS2GYH3ccuZKc1kEgSLvNHe3eKP8jDEl8ZZeh1K2g; + path=/; expires=Wed, 25-Jun-25 11:31:37 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=A4CPzuQT16IMXuri_pK4q9S9iRPvVNibAMgix0dsQWQ-1750849297633-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7cabf901529-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBamFuTzJQRVUyc3pFNmdmeVRXS09V + UEtsVSIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5NywKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogIntcbiAgXCJjb21tYW5kc1wi + OiBbXCIvdGFnICNkZXNpZ25cIl1cbn0iLAogICAgICAgICJyZWZ1c2FsIjog + bnVsbCwKICAgICAgICAiYW5ub3RhdGlvbnMiOiBbXQogICAgICB9LAogICAg + ICAibG9ncHJvYnMiOiBudWxsLAogICAgICAiZmluaXNoX3JlYXNvbiI6ICJz + dG9wIgogICAgfQogIF0sCiAgInVzYWdlIjogewogICAgInByb21wdF90b2tl + bnMiOiAxMTcwLAogICAgImNvbXBsZXRpb25fdG9rZW5zIjogMTIsCiAgICAi + dG90YWxfdG9rZW5zIjogMTE4MiwKICAgICJwcm9tcHRfdG9rZW5zX2RldGFp + bHMiOiB7CiAgICAgICJjYWNoZWRfdG9rZW5zIjogMCwKICAgICAgImF1ZGlv + X3Rva2VucyI6IDAKICAgIH0sCiAgICAiY29tcGxldGlvbl90b2tlbnNfZGV0 + YWlscyI6IHsKICAgICAgInJlYXNvbmluZ190b2tlbnMiOiAwLAogICAgICAi + YXVkaW9fdG9rZW5zIjogMCwKICAgICAgImFjY2VwdGVkX3ByZWRpY3Rpb25f + dG9rZW5zIjogMCwKICAgICAgInJlamVjdGVkX3ByZWRpY3Rpb25fdG9rZW5z + IjogMAogICAgfQogIH0sCiAgInNlcnZpY2VfdGllciI6ICJkZWZhdWx0IiwK + ICAic3lzdGVtX2ZpbmdlcnByaW50IjogImZwXzM4MzQzYTJmOGYiCn0K + recorded_at: Wed, 25 Jun 2025 11:01:37 GMT recorded_with: VCR 6.3.1 diff --git a/test/vcr_cassettes/command/go_to_card_test-test_result_in_a_regular_search_if_the_card_does_not_exist.yml b/test/vcr_cassettes/command/go_to_card_test-test_result_in_a_regular_search_if_the_card_does_not_exist.yml index 739db675a..c407e607e 100644 --- a/test/vcr_cassettes/command/go_to_card_test-test_result_in_a_regular_search_if_the_card_does_not_exist.yml +++ b/test/vcr_cassettes/command/go_to_card_test-test_result_in_a_regular_search_if_the_card_does_not_exist.yml @@ -2444,4 +2444,218 @@ http_interactions: ZXIiOiAiZGVmYXVsdCIsCiAgInN5c3RlbV9maW5nZXJwcmludCI6ICJmcF8z ODM0M2EyZjhmIgp9Cg== recorded_at: Wed, 25 Jun 2025 10:54:11 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgbm90IHNlZWluZyBjYXJkcyB9LlxuIn0s + eyJyb2xlIjoidXNlciIsImNvbnRlbnQiOiIxMjMifV0sInN0cmVhbSI6ZmFs + c2UsInRlbXBlcmF0dXJlIjowLjd9 + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:38 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '430' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '439' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '494' + X-Ratelimit-Remaining-Tokens: + - '188246' + X-Ratelimit-Reset-Requests: + - 618ms + X-Ratelimit-Reset-Tokens: + - 3.526s + X-Request-Id: + - req_0f89803e31f6fc9ead47d9f68b6f86ee + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=naIjzbZ6xfQ.HJymTCA.lSnOojtGzmiE7xKHemEgCgM-1750849298-1.0.1.1-wn1QACkyr_6CyMOTiRTF38ocsg0SQvK4mMEOJ7kBlmSrMZXZu5.BT0yqjRxbuTaQvkjRWq7WzkcyStwP.7zeStRWKb.wn8daTPTt9ArLu60; + path=/; expires=Wed, 25-Jun-25 11:31:38 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=m2OIPns2gco7D3hS6jaWp2TLZ3QrlO.PtUErdiZwVf4-1750849298547-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7cf5b25c8f8-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBa0ZFZE92WmRDUUsyczNPUGRrcHo2 + QllvWCIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5OCwKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogInsgXCJjb250ZXh0XCI6IHsg + XCJ0ZXJtc1wiOiBbXCIxMjNcIl0gfSB9IiwKICAgICAgICAicmVmdXNhbCI6 + IG51bGwsCiAgICAgICAgImFubm90YXRpb25zIjogW10KICAgICAgfSwKICAg + ICAgImxvZ3Byb2JzIjogbnVsbCwKICAgICAgImZpbmlzaF9yZWFzb24iOiAi + c3RvcCIKICAgIH0KICBdLAogICJ1c2FnZSI6IHsKICAgICJwcm9tcHRfdG9r + ZW5zIjogMTE2NSwKICAgICJjb21wbGV0aW9uX3Rva2VucyI6IDEzLAogICAg + InRvdGFsX3Rva2VucyI6IDExNzgsCiAgICAicHJvbXB0X3Rva2Vuc19kZXRh + aWxzIjogewogICAgICAiY2FjaGVkX3Rva2VucyI6IDEwMjQsCiAgICAgICJh + dWRpb190b2tlbnMiOiAwCiAgICB9LAogICAgImNvbXBsZXRpb25fdG9rZW5z + X2RldGFpbHMiOiB7CiAgICAgICJyZWFzb25pbmdfdG9rZW5zIjogMCwKICAg + ICAgImF1ZGlvX3Rva2VucyI6IDAsCiAgICAgICJhY2NlcHRlZF9wcmVkaWN0 + aW9uX3Rva2VucyI6IDAsCiAgICAgICJyZWplY3RlZF9wcmVkaWN0aW9uX3Rv + a2VucyI6IDAKICAgIH0KICB9LAogICJzZXJ2aWNlX3RpZXIiOiAiZGVmYXVs + dCIsCiAgInN5c3RlbV9maW5nZXJwcmludCI6ICJmcF8zODM0M2EyZjhmIgp9 + Cg== + recorded_at: Wed, 25 Jun 2025 11:01:38 GMT recorded_with: VCR 6.3.1 diff --git a/test/vcr_cassettes/command/parser_test-test_the_parsed_command_contains_the_raw_line.yml b/test/vcr_cassettes/command/parser_test-test_the_parsed_command_contains_the_raw_line.yml index e79ddd1e2..be16cb5d2 100644 --- a/test/vcr_cassettes/command/parser_test-test_the_parsed_command_contains_the_raw_line.yml +++ b/test/vcr_cassettes/command/parser_test-test_the_parsed_command_contains_the_raw_line.yml @@ -2203,4 +2203,218 @@ http_interactions: dCIsCiAgInN5c3RlbV9maW5nZXJwcmludCI6ICJmcF8zODM0M2EyZjhmIgp9 Cg== recorded_at: Wed, 25 Jun 2025 10:54:10 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBkYXZpZC5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgbm90IHNlZWluZyBjYXJkcyB9LlxuIn0s + eyJyb2xlIjoidXNlciIsImNvbnRlbnQiOiJhc3NpZ24gQGtldmluIn1dLCJz + dHJlYW0iOmZhbHNlLCJ0ZW1wZXJhdHVyZSI6MC43fQ== + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:39 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '351' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '369' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '494' + X-Ratelimit-Remaining-Tokens: + - '183112' + X-Ratelimit-Reset-Requests: + - 713ms + X-Ratelimit-Reset-Tokens: + - 5.066s + X-Request-Id: + - req_7d3aeb41b3a0f0f4cb87f06466ae9961 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=8dLlznK73btJDWS0fN.7g06ivKJ43MH6mPXPw7ACCI4-1750849299-1.0.1.1-aI4Tfa2Av5KeDZyOqAJdf0DHbDLaeZVD5gEslwBPEV9aIedAg0PyWaPFd3VoZbP1ZyAy2kVwtbUQjgtXjkspWh2KvWqc.zdLtXrNJdxb5QM; + path=/; expires=Wed, 25-Jun-25 11:31:39 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=b_a5KKRw_AU9rGDrOOWkbNmV8pki4n1Pz6FpZ1nr36g-1750849299202-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7d3fe04c6df-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBa1dYcGNvOGttRFVJMlZ0WGdRaG1i + SndUZyIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5OCwKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogIntcbiAgXCJjb21tYW5kc1wi + OiBbXCIvYXNzaWduIEBrZXZpblwiXVxufSIsCiAgICAgICAgInJlZnVzYWwi + OiBudWxsLAogICAgICAgICJhbm5vdGF0aW9ucyI6IFtdCiAgICAgIH0sCiAg + ICAgICJsb2dwcm9icyI6IG51bGwsCiAgICAgICJmaW5pc2hfcmVhc29uIjog + InN0b3AiCiAgICB9CiAgXSwKICAidXNhZ2UiOiB7CiAgICAicHJvbXB0X3Rv + a2VucyI6IDExNjgsCiAgICAiY29tcGxldGlvbl90b2tlbnMiOiAxMywKICAg + ICJ0b3RhbF90b2tlbnMiOiAxMTgxLAogICAgInByb21wdF90b2tlbnNfZGV0 + YWlscyI6IHsKICAgICAgImNhY2hlZF90b2tlbnMiOiAxMDI0LAogICAgICAi + YXVkaW9fdG9rZW5zIjogMAogICAgfSwKICAgICJjb21wbGV0aW9uX3Rva2Vu + c19kZXRhaWxzIjogewogICAgICAicmVhc29uaW5nX3Rva2VucyI6IDAsCiAg + ICAgICJhdWRpb190b2tlbnMiOiAwLAogICAgICAiYWNjZXB0ZWRfcHJlZGlj + dGlvbl90b2tlbnMiOiAwLAogICAgICAicmVqZWN0ZWRfcHJlZGljdGlvbl90 + b2tlbnMiOiAwCiAgICB9CiAgfSwKICAic2VydmljZV90aWVyIjogImRlZmF1 + bHQiLAogICJzeXN0ZW1fZmluZ2VycHJpbnQiOiAiZnBfMzgzNDNhMmY4ZiIK + fQo= + recorded_at: Wed, 25 Jun 2025 11:01:39 GMT recorded_with: VCR 6.3.1 diff --git a/test/vcr_cassettes/commands_controller_test-test_command_requiring_a_confirmation_with_a_redirect.yml b/test/vcr_cassettes/commands_controller_test-test_command_requiring_a_confirmation_with_a_redirect.yml index 1177b0384..161b13fbc 100644 --- a/test/vcr_cassettes/commands_controller_test-test_command_requiring_a_confirmation_with_a_redirect.yml +++ b/test/vcr_cassettes/commands_controller_test-test_command_requiring_a_confirmation_with_a_redirect.yml @@ -2210,4 +2210,219 @@ http_interactions: IjogMAogICAgfQogIH0sCiAgInNlcnZpY2VfdGllciI6ICJkZWZhdWx0IiwK ICAic3lzdGVtX2ZpbmdlcnByaW50IjogImZwXzM4MzQzYTJmOGYiCn0K recorded_at: Wed, 25 Jun 2025 10:54:10 GMT +- request: + method: post + uri: https://api.openai.com/v1/chat/completions + body: + encoding: UTF-8 + base64_string: | + eyJtb2RlbCI6ImdwdC00LjEtbmFubyIsIm1lc3NhZ2VzIjpbeyJyb2xlIjoi + ZGV2ZWxvcGVyIiwiY29udGVudCI6IllvdSBhcmUgRml6ennigJlzIGNvbW1h + bmQgdHJhbnNsYXRvci5cblxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + ICBPVVRQVVQgRk9STUFUICDilIDilIDilIDilIDilIDilIDilIDilIDilIDi + lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBc + blJldHVybiBvbmUgKip2YWxpZCBKU09OKiogb2JqZWN0IHRoYXQgbWF0Y2hl + cyBleGFjdGx5IHRoaXMgdHlwZTpcblxudHlwZSBGaXp6eU91dHB1dCA9IHtc + biAgY29udGV4dD86IHtcbiAgICB0ZXJtcz86IHN0cmluZ1tdO1xuICAgIGlu + ZGV4ZWRfYnk/OiBcIm5ld2VzdFwiIHwgXCJvbGRlc3RcIiB8IFwibGF0ZXN0 + XCIgfCBcInN0YWxsZWRcIiB8IFwiY2xvc2VkXCI7XG4gICAgYXNzaWduZWVf + aWRzPzogc3RyaW5nW107XG4gICAgYXNzaWdubWVudF9zdGF0dXM/OiBcInVu + YXNzaWduZWRcIjtcbiAgICBlbmdhZ2VtZW50X3N0YXR1cz86IFwiY29uc2lk + ZXJpbmdcIiB8IFwiZG9pbmdcIjtcbiAgICBjYXJkX2lkcz86IG51bWJlcltd + O1xuICAgIGNyZWF0b3JfaWQ/OiBzdHJpbmc7XG4gICAgY29sbGVjdGlvbl9p + ZHM/OiBzdHJpbmdbXTtcbiAgICB0YWdfaWRzPzogc3RyaW5nW107XG4gIH07 + XG4gIGNvbW1hbmRzPzogc3RyaW5nW107ICAgICAgLy8gZWFjaCBlbnRyeSBz + dGFydHMgd2l0aCAnLycgZXhhY3RseVxufVxuXG5JZiBuZWl0aGVyIGBjb250 + ZXh0YCBub3IgYGNvbW1hbmRzYCBpcyBhcHByb3ByaWF0ZSwgb3V0cHV0ICoq + ZXhhY3RseSoqOlxueyBcImNvbW1hbmRzXCI6IFtcIi9zZWFyY2ggPHF1ZXJ5 + PlwiXSB9XG5cbi0tIERvICoqTk9UKiogYWRkIGFueSBvdGhlciB0b3AtbGV2 + ZWwga2V5cy4gIFxuLS0gUmVzcG9uc2VzIG11c3QgYmUgdmFsaWQgSlNPTiAo + bm8gY29tbWVudHMsIG5vIHRyYWlsaW5nIGNvbW1hcywgbm8gZXh0cmEgdGV4 + dCkuXG5cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAgSU5URVJOQUwgVEhJTktJ + TkcgU1RFUFMgIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuKERvICoqbm90Kiogb3V0cHV0IHRo + ZXNlIHN0ZXBzLilcbjEuIERlY2lkZSB3aGV0aGVyIHRoZSB1c2Vy4oCZcyBy + ZXF1ZXN0OlxuICAgYS4gb25seSBmaWx0ZXJzIGV4aXN0aW5nIGNhcmRzIOKG + kiBmaWxsIGBjb250ZXh0YCwgIFxuICAgYi4gcmVxdWlyZXMgYWN0aW9ucyDi + hpIgYWRkIGBjb21tYW5kc2AgaW4gc3Bva2VuIG9yZGVyLCAgXG4gICBjLiBt + YXRjaGVzIG5laXRoZXIg4oaSIGZhbGxiYWNrIHNlYXJjaC5cbjIuIEVtaXQg + dGhlIEZpenp5T3V0cHV0IG9iamVjdC5cblxu4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICBET01BSU4gS05PV0xFREdF + ICYgSU5URVJQUkVUQVRJT04gUlVMRVMgIOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuQ2FyZHMgcmVwcmVzZW50IGlz + c3VlcywgZmVhdHVyZXMsIGJ1Z3MsIHRhc2tzLCBvciBwcm9ibGVtcy4gIFxu + Q2FyZHMgaGF2ZSBjb21tZW50cyBhbmQgbGl2ZSBpbnNpZGUgY29sbGVjdGlv + bnMuXG5cbkNvbnRleHQgZmlsdGVycyBkZXNjcmliZSBjYXJkICoqc3RhdGUg + YWxyZWFkeSB0cnVlKiouICBcbkNvbW1hbmRzIChgL2Fzc2lnbmAsIGAvdGFn + YCwgYC9jbG9zZWAsIGAvc2VhcmNoYCwgYC9jbGVhcmApIGFwcGx5ICoqbmV3 + IGFjdGlvbnMqKi5cblxuQ29udGV4dCBwcm9wZXJ0aWVzIHlvdSBtYXkgdXNl + OlxuXG4qIHRlcm1zIOKAlCBhcnJheSBvZiBrZXl3b3Jkc1xuKiBpbmRleGVk + X2J5IOKAlCBcIm5ld2VzdFwiLCBcIm9sZGVzdFwiLCBcImxhdGVzdFwiLCBc + InN0YWxsZWRcIiwgXCJjbG9zZWRcIlxuKiBhc3NpZ25lZV9pZHMg4oCUIGFy + cmF5IG9mIGFzc2lnbmVlIG5hbWVzXG4qIGFzc2lnbm1lbnRfc3RhdHVzIOKA + lCBcInVuYXNzaWduZWRcIlxuKiBlbmdhZ2VtZW50X3N0YXR1cyDigJQgXCJj + b25zaWRlcmluZ1wiIHwgXCJkb2luZ1wiXG4qIGNhcmRfaWRzIOKAlCBhcnJh + eSBvZiBjYXJkIElEc1xuKiBjcmVhdG9yX2lkIOKAlCBjcmVhdG9y4oCZcyBu + YW1lXG4qIGNvbGxlY3Rpb25faWRzIOKAlCBhcnJheSBvZiBjb2xsZWN0aW9u + c1xuKiB0YWdfaWRzIOKAlCBhcnJheSBvZiB0YWcgbmFtZXNcblxuRXhwbGlj + aXQgZmlsdGVyaW5nIHJ1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c + biogVXNlICoqdGVybXMqKiBvbmx5IGlmIHRoZSBxdWVyeSBleHBsaWNpdGx5 + IHJlZmVycyB0byBjYXJkczsgcGxhaW4gdGV4dCBzZWFyY2hlcyBnbyB0byBg + L3NlYXJjaGAuXG4qIE51bWJlcnMgd2l0aG91dCB0aGUgd29yZCDigJxjYXJk + KHMp4oCdIGRlZmF1bHQgdG8gYHRlcm1zYC5cbiAgKiBcIjEyM1wiIOKGkiB0 + ZXJtczogW1wiMTIzXCJdXG4gICogXCJjYXJkIDEsMlwiIOKGkiBjYXJkX2lk + czogWzEsIDJdXG4qIOKAnFggY29sbGVjdGlvbuKAnSDihpIgY29sbGVjdGlv + bl9pZHM6IFtcIlhcIl1cbiog4oCcQXNzaWduZWQgdG8gWOKAnSDihpIgYXNz + aWduZWVfaWRzOiBbXCJYXCJdXG4qIOKAnENyZWF0ZWQgYnkgWOKAnSDihpIg + Y3JlYXRvcl9pZDogXCJYXCJcbiog4oCcVGFnZ2VkIHdpdGggWOKAnSwg4oCc + I1ggY2FyZHPigJ0g4oaSIHRhZ19pZHM6IFtcIlhcIl1cbiog4oCcVW5hc3Np + Z25lZCBjYXJkc+KAnSDihpIgYXNzaWdubWVudF9zdGF0dXM6IFwidW5hc3Np + Z25lZFwiXG4qIOKAnE15IGNhcmRz4oCdIOKGkiBhc3NpZ25lZV9pZHMgb2Yg + cmVxdWVzdGVyIChpZiBpZGVudGlmaWFibGUpXG4qIOKAnFJlY2VudCBjYXJk + c+KAnSDihpIgaW5kZXhlZF9ieTogXCJuZXdlc3RcIlxuKiDigJxDYXJkcyB3 + aXRoIHJlY2VudCBhY3Rpdml0eeKAnSDihpIgaW5kZXhlZF9ieTogXCJsYXRl + c3RcIlxuKiDigJxDb21wbGV0ZWQvY2xvc2VkIGNhcmRz4oCdIOKGkiBpbmRl + eGVkX2J5OiBcImNsb3NlZFwiXG4qIElmIGNhcmRzIGFyZSBkZXNjcmliZWQg + YXMg4oCcYXNzaWduZWQgdG8gWOKAnSAoc3RhdGUpIGFuZCBsYXRlciDigJxh + c3NpZ24gWOKAnSAoYWN0aW9uKSwgKipvbmx5KiogdGhlIGZpcnN0IGlzIGEg + ZmlsdGVyLlxuXG5Db21tYW5kIGludGVycHJldGF0aW9uIHJ1bGVzXG4tLS0t + LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qIFVubGVzcyBhIGNsZWFyIGNv + bW1hbmQgYXBwbGllcywgZmFsbGJhY2sgdG8gYC9zZWFyY2hgIHdpdGggdGhl + IHZlcmJhdGltIHRleHQuXG4qIFdoZW4gc2VhcmNoaW5nIGZvciBub3VucyAo + bm9uLXBlcnNvbiksIHByZWZlciBgL3NlYXJjaGAgb3ZlciBgdGVybXNgLlxu + KiBSZXNwZWN0IHRoZSBvcmRlciBvZiBjb21tYW5kcyBpbiB0aGUgdXNlcuKA + mXMgc2VudGVuY2UuXG4qIOKAnHRhZyB3aXRoICNkZXNpZ27igJ0g4oaSIGAv + dGFnICNkZXNpZ25gIChub3QgYSBmaWx0ZXIpXG4qIOKAnCNkZXNpZ24gY2Fy + ZHPigJ0g4oaSIGNvbnRleHQudGFnX2lkcyA9IFtcImRlc2lnblwiXSAobm8g + YC90YWdgKVxuKiDigJxBc3NpZ24gY2FyZHMgdGFnZ2VkIHdpdGggI2Rlc2ln + biB0byBqeuKAnSDihpIgY29udGV4dC50YWdfaWRzID0gW1wiZGVzaWduXCJd + OyBjb21tYW5kIGAvYXNzaWduIGp6YFxuKiDigJxjbG9zZSBhcyBbcmVhc29u + XeKAnSBvciDigJxjbG9zZSBiZWNhdXNlIFtyZWFzb25d4oCdIOKGkiBgL2Ns + b3NlIFtyZWFzb25dYFxuKiBMb25lIOKAnGNsb3Nl4oCdIOKGkiBgL2Nsb3Nl + YCAoYWN0cyBvbiBjdXJyZW50IGNvbnRleHQpXG5cbkNydWNpYWwgZG9u4oCZ + dHNcbi0tLS0tLS0tLS0tLS0tXG4qICoqTmV2ZXIqKiB1c2UgbmFtZXMgb3Ig + dGFncyBtZW50aW9uZWQgaW5zaWRlIGNvbW1hbmRzIGFzIGZpbHRlcnMuXG4q + ICoqTmV2ZXIqKiBhZGQgcHJvcGVydGllcyB0aWVkIHRvIFVJIHZpZXcgKOKA + nGNhcmTigJ0sIOKAnGxpc3TigJ0sIGV0Yy4pLlxuKiAqKkFsbCoqIGZpbHRl + cnMsIGluY2x1ZGluZyB0ZXJtcywgbXVzdCBsaXZlIGluc2lkZSBgY29udGV4 + dGAuXG4qIERvIG5vdCBkdXBsaWNhdGUgdGVybXMgYWNyb3NzIHByb3BlcnRp + ZXMuXG4qIEF2b2lkIHJlZHVuZGFudCB0ZXJtcy5cblxuUG9zaXRpdmUgJiBu + ZWdhdGl2ZSBleGFtcGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t + LVxuKipVc2VyOioqIGFzc2lnbiBhbmR5IHRvIHRoZSBjdXJyZW50ICNkZXNp + Z24gY2FyZHMgYXNzaWduZWQgdG8ganogYW5kIHRhZyB0aGVtIHdpdGggI3Yy + ICBcbioqT3V0cHV0OioqXG57XG4gIFwiY29udGV4dFwiOiB7IFwiYXNzaWdu + ZWVfaWRzXCI6IFtcImp6XCJdLCBcInRhZ19pZHNcIjogW1wiZGVzaWduXCJd + IH0sXG4gIFwiY29tbWFuZHNcIjogW1wiL2Fzc2lnbiBhbmR5XCIsIFwiL3Rh + ZyAjdjJcIl1cbn1cblxuKipJbmNvcnJlY3QgKGRvIE5PVCBkbyB0aGlzKToq + Klxue1xuICBcImNvbnRleHRcIjogeyBcImFzc2lnbmVlX2lkc1wiOiBbXCJh + bmR5XCJdLCBcInRhZ19pZHNcIjogW1widjJcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvYXNzaWduIGFuZHlcIiwgXCIvdGFnICN2MlwiXVxufVxuXG5B + ZGRpdGlvbmFsIGV4YW1wbGVzOlxueyBcImNvbnRleHRcIjogeyBcImFzc2ln + bmVlX2lkc1wiOiBbXCJqb3JnZVwiXSB9LCBcImNvbW1hbmRzXCI6IFtcIi9j + bG9zZVwiXSB9ICBcbnsgXCJjb250ZXh0XCI6IHsgXCJ0YWdfaWRzXCI6IFtc + ImRlc2lnblwiXSB9IH0gIFxueyBcImNvbW1hbmRzXCI6IFtcIi9hc3NpZ24g + am9yZ2VcIiwgXCIvdGFnICNkZXNpZ25cIl0gfVxuXG5GYWxsYmFjayBzZWFy + Y2ggZXhhbXBsZTpcbnsgXCJjb21tYW5kc1wiOiBbXCIvc2VhcmNoIHdoYXTi + gJlzIGJsb2NraW5nIGRlcGxveVwiXSB9XG5cbuKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU + gOKUgOKUgOKUgCAgRU5EIE9GIFBST01QVCAg4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA + 4pSA4pSA4pSAICAgICAgICBcblRoZSBuYW1lIG9mIHRoZSB1c2VyIG1ha2lu + ZyByZXF1ZXN0cyBpcyBrZXZpbi5cblxuIyMgQ3VycmVudCB2aWV3OlxuXG5U + aGUgdXNlciBpcyBjdXJyZW50bHkgdmlld2luZyBhIGxpc3Qgb2YgY2FyZHMg + fS5cbiJ9LHsicm9sZSI6InVzZXIiLCJjb250ZW50IjoiY2xvc2UgY2FyZHMg + YXNzaWduZWQgdG8ganoifV0sInN0cmVhbSI6ZmFsc2UsInRlbXBlcmF0dXJl + IjowLjd9 + headers: + User-Agent: + - Faraday v2.13.1 + Authorization: + - Bearer + Content-Type: + - application/json + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Date: + - Wed, 25 Jun 2025 11:01:37 GMT + Content-Type: + - application/json + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Access-Control-Expose-Headers: + - X-Request-ID + Openai-Organization: + - 37signals-u7qhwk + Openai-Processing-Ms: + - '438' + Openai-Version: + - '2020-10-01' + X-Envoy-Upstream-Service-Time: + - '444' + X-Ratelimit-Limit-Requests: + - '500' + X-Ratelimit-Limit-Tokens: + - '200000' + X-Ratelimit-Remaining-Requests: + - '499' + X-Ratelimit-Remaining-Tokens: + - '198760' + X-Ratelimit-Reset-Requests: + - 120ms + X-Ratelimit-Reset-Tokens: + - 372ms + X-Request-Id: + - req_43a805872cc285b06138c3a42aeb2058 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Cf-Cache-Status: + - DYNAMIC + Set-Cookie: + - __cf_bm=__O3QEkwlJdPtr1e4h.X0._EFGHzXl9iIqYvr7vhTLI-1750849297-1.0.1.1-SjbICM5Oj9JkjXFR67IVbBC1pvI7BYF2e5nHf4BrrEmrmFR7bsQxSfW05hvSNEPTcFD6c.MfYwEwIwtTpYK5EoLeVfILJ3AOb3LEeet4d6M; + path=/; expires=Wed, 25-Jun-25 11:31:37 GMT; domain=.api.openai.com; HttpOnly; + Secure; SameSite=None + - _cfuvid=d.OBo_lHecZwAo.aXYX1PrUaEz.fwQUjy8sveD5Z8NU-1750849297494-0.0.1.1-604800000; + path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None + X-Content-Type-Options: + - nosniff + Server: + - cloudflare + Cf-Ray: + - 9553f7c8dd38cfbe-MAD + Alt-Svc: + - h3=":443"; ma=86400 + body: + encoding: ASCII-8BIT + base64_string: | + ewogICJpZCI6ICJjaGF0Y21wbC1CbUlBaUllTHB1UHdQWTJ5VmRQc2I3b0s4 + aHRmeiIsCiAgIm9iamVjdCI6ICJjaGF0LmNvbXBsZXRpb24iLAogICJjcmVh + dGVkIjogMTc1MDg0OTI5NiwKICAibW9kZWwiOiAiZ3B0LTQuMS1uYW5vLTIw + MjUtMDQtMTQiLAogICJjaG9pY2VzIjogWwogICAgewogICAgICAiaW5kZXgi + OiAwLAogICAgICAibWVzc2FnZSI6IHsKICAgICAgICAicm9sZSI6ICJhc3Np + c3RhbnQiLAogICAgICAgICJjb250ZW50IjogIntcbiAgXCJjb250ZXh0XCI6 + IHsgXCJhc3NpZ25lZV9pZHNcIjogW1wianpcIl0gfSxcbiAgXCJjb21tYW5k + c1wiOiBbXCIvY2xvc2VcIl1cbn0iLAogICAgICAgICJyZWZ1c2FsIjogbnVs + bCwKICAgICAgICAiYW5ub3RhdGlvbnMiOiBbXQogICAgICB9LAogICAgICAi + bG9ncHJvYnMiOiBudWxsLAogICAgICAiZmluaXNoX3JlYXNvbiI6ICJzdG9w + IgogICAgfQogIF0sCiAgInVzYWdlIjogewogICAgInByb21wdF90b2tlbnMi + OiAxMTczLAogICAgImNvbXBsZXRpb25fdG9rZW5zIjogMjUsCiAgICAidG90 + YWxfdG9rZW5zIjogMTE5OCwKICAgICJwcm9tcHRfdG9rZW5zX2RldGFpbHMi + OiB7CiAgICAgICJjYWNoZWRfdG9rZW5zIjogMCwKICAgICAgImF1ZGlvX3Rv + a2VucyI6IDAKICAgIH0sCiAgICAiY29tcGxldGlvbl90b2tlbnNfZGV0YWls + cyI6IHsKICAgICAgInJlYXNvbmluZ190b2tlbnMiOiAwLAogICAgICAiYXVk + aW9fdG9rZW5zIjogMCwKICAgICAgImFjY2VwdGVkX3ByZWRpY3Rpb25fdG9r + ZW5zIjogMCwKICAgICAgInJlamVjdGVkX3ByZWRpY3Rpb25fdG9rZW5zIjog + MAogICAgfQogIH0sCiAgInNlcnZpY2VfdGllciI6ICJkZWZhdWx0IiwKICAi + c3lzdGVtX2ZpbmdlcnByaW50IjogImZwXzM4MzQzYTJmOGYiCn0K + recorded_at: Wed, 25 Jun 2025 11:01:37 GMT recorded_with: VCR 6.3.1