Skip to content

fix(llm): honor GRAPHIFY_API_TIMEOUT in the bedrock backend - #2283

Closed
zhiyanliu wants to merge 1 commit into
Graphify-Labs:v8from
zhiyanliu:fix/bedrock-honor-api-timeout
Closed

fix(llm): honor GRAPHIFY_API_TIMEOUT in the bedrock backend#2283
zhiyanliu wants to merge 1 commit into
Graphify-Labs:v8from
zhiyanliu:fix/bedrock-honor-api-timeout

fix(llm): honor GRAPHIFY_API_TIMEOUT in the bedrock backend

ec8ba56
Select commit
Loading
Failed to load commit list.
Graphify Labs / Graphify succeeded Jul 29, 2026 in 0s

Graphify — looks good

Looks safe to merge — no coupling regressions and no blocking issues, checked against the code graph (not a self-assessment).

Details

Graphify reviewed this change.

Looks safe to merge — no coupling regressions and no blocking issues, checked against the code graph (not a self-assessment).


Graphify review — findings

This PR wires the GRAPHIFY_API_TIMEOUT (and retry) settings into the AWS Bedrock backend by constructing the bedrock-runtime boto3 client with an explicit botocore.config.Config (read/connect timeouts and retry policy) in both _call_bedrock and the _call_llm bedrock branch. The README's GRAPHIFY_API_TIMEOUT row is updated to mention the Bedrock backend, and the test suite's fake boto3 fixture is extended to stub botocore.config and capture client-construction kwargs, with two new tests asserting the timeout/retry values reach the client both when the env var is set and when it defaults. Surface area is limited to the Bedrock client setup in graphify/llm.py, one README table row, and the image-vision test file's boto3 fakes plus two added tests.

Worth a look

  • Double retry layering: botocore retries stacked on top of application-level retry loopgraphify/llm.py:1631 · Escalate · medium
    • agreed by 2 of 2 members but NOT verified (no proof, no reproducing execution) — consensus is not a verdict; needs human review
Analysis details — impact, health, verification

Impact & health

Graphify review

Impact — 617 functions depend on the 212 node(s) this change touches.

Health — this change adds coupling hotspots:

  • worse: _call_bedrock() — 4 callers, 7 callees

Verification — 617 functions in the blast radius were not formally verified this run (proofs are advisory here).

Gate & verification

graphify gate

PASS — objectively clean (no health regressions, tests not run — proofs not run this pass (advisory)). Grounded, not self-assessed.

Advisory (not blocking):

  • verification_scope: 427 function(s) in the blast radius were not formally verified this run